Git объединение одной ветки в другую - это двухстороннее слияние?
My git repo выглядит следующим образом:
_ branch_a
/
master /
\_ branch_b
Теперь я хочу объединить branch_b в branch_a, not либо в ветвь в master.
Итак, я сделал
git checkout branch_a
git merge branch_b
И git пошел и нашел пару конфликтов.
Когда я делаю git mergetool
с помощью meld
, что я получаю на консоли,
{local}: modified file
{remote}: modified file
и окно, показывающее только LOCAL и REMOTE.
Что я хочу знать:
-
Почему нет общей базы того, что было показано мастером?
-
Между LOCAL и REMOTE, который я должен изменить?
Ответы
Ответ 1
Если вы объединяете ветвь A в ветвь B, конфликты, которые вы получаете, возникают из разницы между двумя ветвями, а не от разницы с мастером. выполнение git diff
в или B даст вам, однако, diff с mastere, поскольку он является предком
Обычно ветвь локальная должна быть той, в которой вы объединяетесь в, а удаленный - тот, который вы хотите объединить strong > . В любом случае на вашем компьютере у вас будет только одна копия файла, поэтому просто измените его.