我們正在使用我們所有人使用的單個遠程存儲庫的模型。我們爲新功能分支並重新集成到主幹分支。我們的工作流程是當其他功能集成到中繼線時,我們應該從中繼線集成到我們的工作分支中。如何在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
我不喜歡「混帳結賬主幹/ git的拉/ git的結帳分支」的怪圈。它通常與Visual Studio結合,抱怨說我的所有文件和項目都在磁盤上發生了變化,並且它應該重新加載它們。兩個結帳。和拉。併合並。合併是不可避免的,但由於git的工作原理,它應該能夠在trunk上快速轉發,而不需要檢查它。
但我不知道這個命令,而且我的google-foo在這方面失敗了。任何人都知道嗎?
:)我不得不說,我稍微嚇壞了,你發生在答覆都提到了該職位(謝謝!),以它的名字命名的第一行中提到用戶... – 2011-02-28 21:28:27
所以,你的建議是做「git merge origin/trunk」而不是checkout/pull/checkout/merge dance?我會在下一次出現時嘗試。 – 2011-02-28 21:39:29
使用'git fetch upstream upstream trunk:trunk',你可以跳過合併,簡單地快進,使用單線程。請參閱[我的答案](http://stackoverflow.com/a/21601318/177710)。 – Oliver 2014-05-13 15:36:12