我有幾個分支爲當前項目定義,除了主分支之外的所有主分支都只有相同的小文件集(小於10)。同步兩個只有幾個文件不同的GIT分支
在主站中實現新功能後,我想用最少的努力將這些更改和附加內容複製到其他分支。這裏推薦的方法是什麼?
我有幾個分支爲當前項目定義,除了主分支之外的所有主分支都只有相同的小文件集(小於10)。同步兩個只有幾個文件不同的GIT分支
在主站中實現新功能後,我想用最少的努力將這些更改和附加內容複製到其他分支。這裏推薦的方法是什麼?
你有三種選擇:
merge
:有趣的,如果掌握的所有改變需要一個分支是可見的,但事實並非總是如此
cherry-pick
:只適用於某些提交到分支
rebase
:最好的解決方案如果你的分支尚未推:你重播ŧ他對主
但頂部提交您的分支:在三種情況下,你需要籤要整合變更所在的分支,並重復每個分支。
除非你的分支從一個到另一:
---o branch B1
\
----o branch B2
\
----o branch B3
在這種情況下,您可以:
git checkout B1
,git merge B2
)當我固定在一個分支的一些重要的事情通常(可即使是高手),如果我想的一樣修復被複制到另外一個分支,我做git checkout my_latest_feature
和git merge --no-commit master
沒試過cherry-pick,但我想,這就是我想最好的方式,因爲摘櫻桃只會合並該具體更改和git merge --no-commit master
將嘗試獲取整個樹(甚至除了最新的修補程序之外的其他提交)。
我總是討厭任何篡改提交歷史的命令。這就是爲什麼我從來沒有rebase
更新:剛剛發現這個類似的問題:How to copy commits from one branch to another?
出了什麼問題'git的合併master'的?你只是想要一種方法來在一個命令中運行多個分支? – 2010-03-17 09:55:34
@Jimmy,請在我的回答中查看第二段。讓我知道你的想法。 – 2010-03-18 13:32:37