2015-01-08 4 views
0

В настоящее время у меня есть сценарий, где я хочу локально объединить две ветви в третью ветвь. Итак, сценарий. FYI Я - нуб в github.Слияние трех ветвей github локально

  1. Master -> Epic_1
  2. Master -> Epic_2

Теперь я хочу, чтобы объединить Epic_1 ветви первого Учителя, а затем объединить Epic_2 филиал освоить на вершине объединенного Epic_1 и Master. Я не уверен, что искать, чтобы получить правильный ответ, добавив этот вопрос. ВАЖНО - я хочу, чтобы все это выполнялось только локально, и ничто не должно идти в удаленную ветку.

Спасибо, Ray

ответ

3
git checkout master # go to master since that’s your target branch 
git merge Epic_1  # merge in the first branch 
git merge Epic_2  # merge in the second branch 

Это даст вам результат, который выглядит примерно так:

  (old) master  master (after merges) 
        ↓   ↓ 
* -- * -- * -- * -- * -- M1 -- M2 
        / /
* -- * -- * -- * -- * - /
        ↑  /
        Epic_1 /
         /
* -- * -- * -- * -- * -- * 
         ↑ 
         Epic_2 

Как и все в Git, это происходит только локально, так что ничего на любом из пультов дистанционного управления не влияет. Конечно, вы можете нажать мастер-ветвь, чтобы обновить ее на пульте дистанционного управления.

+0

какая команда дала вам такой красивый графический обзор? Желаю знать –

+1

Я действительно сделал это вручную ... xD – poke

+0

cool! Как долго вы используете Git? Я понял это с вашего рисунка. :) –

0

Вы просто

git fetch # in case these branches are from the remote and to be up-to-date 

git checkout master 

git merge branch_1 

git merge branch_2 

Вы можете теперь сделать

git status 

и

git log 

, чтобы увидеть состояние хозяина. Он будет локальным, если/пока вы явно не нажмете мастер на удаленный (возможно, origin в вашем случае).

Если есть коммиты слияния, вам нужно будет их разрешить, но вы получите соответствующее сообщение, указывающее на это, и это будет отдельный вопрос.

Существует также множество вариантов слияния и переустановки и соответствующие темы, такие как перемотка вперед, но это выходит за рамки этого вопроса.

Смежные вопросы