Подтвердить что ты не робот

Как автоматически разрешать конфликты слияния, выбрав удаленную версию в Git?

Можно ли указать git, чтобы автоматически разрешать конфликты для пакета файлов с помощью удаленной версии для каждого из них? Например, взять удаленную версию каждого файла в определенном каталоге?

4b9b3361

Ответ 1

git-merge, похоже, поддерживает только стратегию "наш", где результатом слияния является локальная версия. И это только для всего дерева.

Если вы входите в конфликтное состояние при выполнении слияния, вы можете использовать git-checkout --theirs с помощью пути для извлечения файлов из индекс.

Наконец, вы можете git-reset заставить части дерева привязываться к определенной фиксации.

Теперь также http://www.seanius.net/blog/2011/02/git-merge-s-theirs/, который в основном рекомендует создавать merge -s ours, а затем отменять изменения.

Ответ 2

Вы можете использовать стратегию recursive (-s) с опцией theirs (-X). То есть:

git merge -s recursive -X theirs source_branch