В git merge, как вы просто замените свою версию версией, с которой git говорит, что существует конфликт? - PullRequest
21 голосов
/ 18 августа 2010

У меня есть два файла: A и B. Если я работал над A, а партнер работает над B, я хочу объединить файлы A и B. B уже зафиксирован.Допустим, мой партнер уже внес изменения, над которыми я работал, поэтому я просто хочу заменить свой A-файл их B-файлом - слияние не требуется.Как мне разрешить конфликт с git?

Спасибо!

Ответы [ 2 ]

24 голосов
/ 19 августа 2010

Допустим, вы и ваш партнер изменили один и тот же файл и зафиксировали его в каждом соответствующем хранилище.

git pull                             # fetch/merge partners changes
# merge fails, conflict
git checkout origin FILE_TO_REPLACE  # replace changes with partners ver
git commit                           # finish merge
22 голосов
/ 07 декабря 2012

Если это конфликт во время операции слияния (слияние, выбор вишни, перебазирование и т. Д.), Вы можете разрешить конфликт, выбрав одну из сторон изменений, выполнив:

git checkout --ours <path> (это выберет локальные изменения)

или

git checkout --theirs <path> (это выберет удаленные изменения)

, затем завершите разрешение конфликта как обычно с помощью:

git add <path>

затем зафиксируйте с помощью:

git commit
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...