Как перемотать вперед другие ветки отслеживания в git?

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

Таким образом, мы нередко делаем:

(branch) $ git commit -a -m"blah blah blah"
(branch) $ git fetch  # origin/trunk is updated
(branch) $ git checkout trunk
(trunk) $ git pull  # trunk is fast-forwarded to current version of origin/trunk.
(trunk) $ git checkout branch
(branch) $ git merge trunk
(branch) $ git push

Я не делаю ' t как цикл "git checkout trunk / git pull / git checkout branch". Обычно это сочетается с жалобами Visual Studio на то, что все мои файлы и проекты изменились на диске, и что она должна их перезагрузить. Для обеих касс. И тяга. И слияние. Слияние неизбежно, но из-за того, как работает git, он должен иметь возможность выполнять быструю перемотку по стволу без необходимости проверять его.

Но я не знаю команду, а мой google-foo имеет подвел меня в этом. Кто-нибудь знает, как?

28
задан Blaise Pascal 28 February 2011 в 21:01
поделиться