git — стилизация файла C / C ++ в diff

У меня есть требование стилизовать только ту часть файла C / C ++, которая фиксируется (поэтому вина за другие строки не затронута). Есть ли какой-нибудь инструмент, чтобы просто сделать это? Я знаю, что мы можем стилизовать весь файл и обвинить его в игнорировании изменений стиля (но моя команда этого не хочет).

Вот несколько вещей, которые я попробовал с стиль:

  1. Я записываю diff в новый файл, стилизую его и заменяю diff в оригинальном файле. Почему это не работает? На самом деле это не стилизовано, так как не имеет контекста, например, оператор if для отступа остальных строк и т. Д.

  2. Я оформляю весь файл и заменяю только измененный раздел. — Почему это не работает? Если я попытаюсь изменить максимальную длину кода, и строки будут разбиты, тогда линии различий будут другими.

  3. Как насчет трехстороннего слияния между исходным файлом и файлом, в который включен стиль diff? Все же попробовать это.

Может быть, есть более простой способ, и я скучаю по нему: S

1

Решение

Вы можете сделать это с помощью git hook и clang-format.

Например это: https://llvm.org/svn/llvm-project/cfe/trunk/tools/clang-format/git-clang-format

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]