Разрешить git объединять разные типы файлов с помощью внешнего инструмента?
Мы работаем над проектом, в котором мы часто сталкиваемся с одним и тем же конфликтом из-за того, что git не может правильно объединить файлы. Однако эти конфликты могут быть легко устранены с помощью внешнего скрипта. Можно ли каким-то образом позволить git теперь, когда он всегда должен обрабатывать конфликты слияния в файле с определенным расширением с помощью внешнего скрипта? Сценарию нужны маркеры >>>> и <<<< из git, чтобы найти измененные части в файле, поэтому git должен вызвать наш скрипт после того, как это будет сделано с помощью собственного слияния.
Кто-нибудь знает, есть ли ловушка, которую мы могли бы использовать для этого, или, может быть, вы можете сказать git запустить этот скрипт для конфликтов в указанном файле?
С наилучшими пожеланиями, Майкл
1 ответ
Если разрешение конфликта слияния всегда одинаково, проверьте git rerere
,
Это описано в " Rerere Your Boat... " и в " Журнале Гитстера - Веселье с rerere "
Название означает " повторно использовать записанное разрешение ", и, как следует из названия, оно позволяет вам попросить Git вспомнить, как вы разрешили конфликт блоков, чтобы в следующий раз, когда он увидит тот же конфликт, Git может автоматически разрешить его для вас.
Вам нужно будет активировать его, хотя:
git config --global rerere.enabled 1