2016-01-19 2 views
4

У меня есть два удаленных филиалы: origin/master и origin/my_remote_featureGit тянуть мастер в удаленный филиал о происхождении

Я проверил my_remote_feature используя git checkout --track -b origin/my_remote_feature

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

+2

Возможный дубликат [Получить изменения от мастера к ветке в git] (http://stackoverflow.com/questions/5340724/get-changes-from-master-into-branch-in-git) – Edward

ответ

7
git rebase origin/master 

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

git rebase --continue 

если есть конфликты. Это приведет к тому, что my_remote_feature зафиксируется поверх HEAD источника/мастера. Переписывая историю как бы.

git merge origin/master 

Это также возможность. Тем не менее, вы обнаружите, что все фиксации для овладения станут частью вашей истории фиксации remote_feature. Который вы можете не хотеть. Как правило, rebase лучше сохранить историю фиксации. :)

1

Слейте master ветку в свою ветвь, а затем нажмите изменения.

2

Один классный способ сделать это - пересобрать источник/мастер в удаленную ветку. Вы можете следить за следующим рабочим процессом для переадресации;

  1. Отъезд в вашу местную ветку my_remote_feature и вытащить изменения из этой ветви. git pull origin my_remote_feature

  2. сделать git fetch

  3. Тогда перебазироваться происхождения/мастер, как git rebase origin/master

  4. Если все работает успешно, нажмите новых обновлений. git push origin my_remote_feature

Это приведет все изменения на мастер на вершине ваших изменений в my_remote_feature. Если есть какие-либо конфликты, вам придется решить их по пути и убедиться, что вы добавляете файлы после разрешения конфликтов, затем выполните git rebase --continue после каждого разрешения конфликтов.

Для получения дополнительной информации вы можете обратиться к the git rabase doc.

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