下面是當前分支設置:git分支前幾次提交?
A---B---C-----------------D---E---F master
\
G---H---I---J---K---L branchA
,當我去上branchA工作,我意識到,過去幾年提交了一個新功能,它應該是一個新的分支。所以我想它使得樹的樣子:
A---B---C-----------------D---E---F master
\
G---H---I------------M branchA
\
J---K---L branchB
我不想重命名的分支,因爲這將重命名G,H,我對新的分支名稱。我可以創建一個新的分支,從我開始(git branch branchB <SHA-of-I>
),但如何最好地「移動」提交J,K和L? git merge branchA
而branchB只是將branchB頭快速轉發到與branchA相同的點。
你是什麼意思「移動提交JKL」?當您在那裏創建分支B時,它們將根據需要位於分支B上。剩下要做的就是將branchA重新設置回給我,並且做任何它創建提交M(它從哪裏來的?)。 – Cascabel 2010-11-05 20:55:23
J,K和L是被添加到branchA中的原始錯誤提交,它需要成爲他們自己的分支的一部分(branchB) – MidnightLightning 2010-11-05 21:11:22
準確地說。但這並不意味着他們需要隨處移動。除非在branchA上有任何東西,在JKL之前,*不應該在branchB上,只需在branchA的當前位置創建branchB,然後將branchA移回I. – Cascabel 2010-11-05 21:13:15