有一個branchA
不斷開發和新的提交正在創建。也許20次提交之前,我們創建了一個branchB
,該函數本來應該在稍後完成。在這種情況下合併是否合適?
現在,我們開始branchB
工作,我應該合併更改從branchA
到branchB
?
如果是,我會在幾天內做同樣的事情嗎?
混亂的根源在於雙方branchA
和branchB
都在被不斷地開發新的提交所做的事實,所以我不知道,如果合併branchA
爲branchB
每一天都是一個好主意。
有一個branchA
不斷開發和新的提交正在創建。也許20次提交之前,我們創建了一個branchB
,該函數本來應該在稍後完成。在這種情況下合併是否合適?
現在,我們開始branchB
工作,我應該合併更改從branchA
到branchB
?
如果是,我會在幾天內做同樣的事情嗎?
混亂的根源在於雙方branchA
和branchB
都在被不斷地開發新的提交所做的事實,所以我不知道,如果合併branchA
爲branchB
每一天都是一個好主意。
通常所有開發者都應該sync
他們的分支default-branch (normally master)
。由於branchA
和branchB
正在不斷髮展,如果您不需要branchA
更改,請不要合併。
後branchA
功能等做用default-branch
(主)合併,拉master
支進branchB
(會得到branchA
變化)。
Rebase:如果您想將branchA
頻繁拉入branchB
,那麼reabasing將是不錯的選擇。
$ git checkout branchB
$ git rebase branchA # keep branchB changes top
我會去:
git checkout branchB
git rebase branchA
這將做合併,並把所有提交的branchB
對那些branchA
製成的頂部。這真是很好地解釋在這裏:https://git-scm.com/book/en/v2/Git-Branching-Rebasing
有一點需要注意,雖然:如果有幾個人在branchB
工作,你必須在時間一致,當你在做的底墊,因爲你必須push --force
你衍合分支遠程可能導致:
branchB
一些提交陷入了尷尬的局面時(誰在當你在做墊底他們推)試圖pull branchB
(重新安裝)從origin
。爲了恢復與分支本地提交的同步,必須挑選到新的branchB
您應該還提到,在此特定示例中,重新綁定branchB是必要的。 – stdcall
@stdcall ok。我添加了rebasing部分。 –