Автоматизация разрешения конфликтов слияния - PullRequest
1 голос
/ 08 марта 2019

Я использую git mergetool с beyondcompare4 для решения конфликтов git merge. В моих файлах проекта у меня часто есть теги для даты / времени / списка версий, которые всегда вызывают конфликт при слиянии. Я хотел бы автоматизировать разрешение этих конфликтов. Например, выбирая самую последнюю дату или наибольший номер версии (есть четкая логика, которую я мог бы написать).

Как мне этого добиться?

Вот что я попробовал:

  • Я попытался найти git hook, но не нашел ни одного, подходящего моей цели. Нет ничего похожего на pre-merge hook

  • Я написал сценарий powershell, который просматривает конфликты слияния, решает их в соответствии с моей логикой и вносит изменения. Это хорошо работает, если это единственный конфликт в файле. Если есть еще конфликты, я не могу ставить изменения, так как они также будут конфликтовать. С другой стороны, если я запускаю git mergetool после выполнения моего сценария, BC4 игнорирует изменения, внесенные сценарием, и показывает эти строки как конфликты.

  • Поиск возможностей для запуска собственного сценария с использованием BC4, но, похоже, у него нет такой функции.

Любая помощь приветствуется,

Гинтаутас

...