git Разрешение конфликта вручную -- Какие части файла выбирать. Пример и объяснение где чьи правки <<<<<<< ======= >>>>>>>

Что что означает

Обычно, когда файл находится в состоянии конфликта его содержимое выглядит как-то так ( в примере одна конфликтная секция -- их можно быть много):

Код/текст, который не вы, ни коллега не трогали 
<<<<<<< HEAD
Тут что-то поправили вы
=======
Тут что-то поправил коллега
>>>>>>> branch-a

где (важно: помните, что "свой-чужой" тут условности, важно как именно вы подливали изменения, комментарий ниже для варианта git merge):

-- то есть на самом деле вы можете объединять две ветки, в которых работали другие люди, тогда прокомментировать состояние файла можно так:

Какой-то неизмененёный текст // тут нет, конфликта 
<<<<<<< HEAD // начало конфлитка
Тут что-то поправили  // это предлагают, в той ветке/состоянии В КОТОРУЮ вливали
=======
Тут что-то поправили но иначе // Это предлагают в той ветки, которую вливали
>>>>>>> branch-a // конец кофликной области с именем ветки/коммита, которую вливали

ПРИМЕЧАНИЕ: если во вливаемой ветке только удаляли и ничего не добавляли, то кофликт будет выглядеть как-то так:

Код/текст, который не вы, ни коллега не трогали 
<<<<<<< HEAD
Тут что-то поправили вы
=======
>>>>>>> branch-a

Как разрешить конфликт

Оставьте в файле только нужные вам строки, а также уберите уже упоминавшиеся выше фрагменты разделения конфликтных частей файла,
например если было что-то вроде:

<<<<<<< HEAD
aaaaaaaaa
bbbbb
ccc
=======
dddddd
ffff
gggggggggg
>>>>>>> branch-a

то в итоге, вы должны оставить ту часть, которую вам нужна (по логике), например:

dddddd
ffff
gggggggggg

ВНИМАНИЕ: не всегда придется просто выбирать красную или синюю таблетку изменения сверху или снизу -- иногда вам придется выбрать нужные строки (возможно, частично) и снизу и сверху, если и там и там были сделаны важные изменения.

И зафиксируйте изменения.

Источник: https://help.github.com/articles/resolvi...

Как еще можно разрешать конфликты

Видео-материалы

Источники

vedro-compota's picture

Если нужно не глядя принять все свои или все чужие изменения, то можно применять автоматическое разрешение конфликтов http://fkn.ktu10.com/?q=node/16512

_____________
матфак вгу и остальная классика =)