2015-03-25 4 views
0

Я работаю над проектом, и у нас есть ветви развития. Допустим, у нас есть филиалы: master, A, BGit: Получить изменения от мастера к удаленной ветке

Допустим, что история выглядит это прямо сейчас:

7 
    | 
    6 merge commit 
    |/ | 
    4 | 
    | | 
    3 | 
    | | 
    a 5 b 
    \ |/
     2 
     | 
     1 
     | 
     m 

где т, а, б ветви и цифры просто обязан. Поэтому я сделал некоторую работу над мастером, затем создал ветвь a, затем немного поработал над некоторой работой над мастером, а затем работал над a, а затем объединился.

** Вопрос: ** Каков правильный способ получить фиксацию 5 в ветку?

Если бы это был местный филиал я мог только

git checkout a 
git rebase master 

Но это удаленный филиал, и я знаю, что это не безопасно связываться с удаленной историей, как это. Каков правильный способ получения изменений от мастера?

ответ

3
  1. создать местный филиал отслеживая дистанционное/а
  2. мерзавец извлекаете
  3. мерзавец мастер слияния
  4. мерзавец толчок

Вы уже объединены в одну сторону; была ли какая-то конкретная причина, по которой вы достигли прямой замены, вместо слияния в другом направлении?

Это потому, что вы ранее использовали некоторые другие VCS со сломанными слияниями? Если это так, я могу успокоить вас тем, что git отлично способен найти общего предка и выполнить разумное слияние здесь.

+0

Ну ... если честно, я не думал о слиянии с другим путем! Мой разум застыл на rebase – TheCrafter

+0

Достаточно честный! Как правило, безопаснее придерживаться слияния для общедоступных изменений и сохранять rebase для очистки локальных коммитов до нажатия. – Useless

+0

Получил! Большое спасибо! – TheCrafter

2

Просто слиться мастер в:

git checkout a 
git merge master 

Совершено тысячу раз, не проблема.

+0

Если я схожу, как это, я бы получил «объединение слияния» с фиксацией от мастера к моей ветке. Это приемлемо? – TheCrafter

+0

Вы получите это, да. И я думаю, что это должно быть приемлемым, но зависит от того, что вы считаете приемлемым в журнале git. – dmoreno