При просмотре различного использования git diff
, каждое изменение запускается со строки как:
@@ -28,41 +20,10 @@ namespace ConsoleApplication1
Для C заключительная часть является довольно описательной – это показывает, например, функцию, в которой произошло изменение. Но для C#, это только когда-либо показывает пространство имен, которое не очень полезно. Я думаю поэтому, что это показывает последнюю строку, которая не располагается с отступом. Существует ли путь, как настроить это?
Я нашел его, строка называется заголовком фрагмента, и в документации рассказывается, как его настроить:
Определение настраиваемого заголовка фрагмента
Каждая группа изменений (называемых "кусок") в текстовом выводе diff начинается с префикса строки вида:
@@ -k, l + n, m @@ TEXT
Это называется заголовком блока. Часть «ТЕКСТ» по умолчанию - это строка, которая начинается с алфавита, подчеркивания или знака доллара; это соответствует тому, что используется в выводе GNU
diff -p
. Однако этот выбор по умолчанию не подходит для некоторого содержимого, и вы можете использовать настраиваемый шаблон для выбора.Во-первых, в .gitattributes вы должны назначить для путей атрибут
diff
.*. Tex diff = tex
Затем вы должны определить конфигурацию «diff.tex.xfuncname», чтобы указать регулярное выражение, которое соответствует строке, которая должна отображаться как заголовок фрагмента «ТЕКСТ». Добавьте раздел в свой файл
$ GIT_DIR / config
(илифайл $ HOME / .gitconfig
) следующим образом:[разн. Текс] xfuncname = "^ (\\\\ (sub) * раздел \\ {. *) $"
Примечание. Синтаксический анализатор файла конфигурации съедает один уровень обратной косой черты, поэтому вам придется удвоить обратную косую черту; шаблон выше выбирает строку, которая начинается с обратной косой черты, и ноль или более вхождений подпрограммы, за которой следует раздел, за которым следует открытая фигурная скобка, до конца строки.
См. справочную страницу gitattributes , раздел «Создание текста различий» и т. Д. diff.csharp.xfuncname
конфигурация (ищите xfuncname
).