1
我有一堆線性提交歷史提交。在某些時候,我添加了一個對測試有用的功能,但不應該投入生產。我現在想分出一個具有該功能的testing
分支,但希望將來能夠將testing
重新分配到master
以使其保持最新狀態。所以,我目前提交的樣子:Git刪除功能,但保留其他分支
A-B-C-D-E
我的解決辦法是增加另一個承諾F
到master
,消除該功能。然後創建一個分支testing
並恢復提交F
:
# Do work to remove feature
git commit -a -m "F"
git checkout -b testing
git revert master
所以現在我的提交歷史類似:
A-B-C-D-E-F (master)
\
F' (testing)
凡F'
是F
逆轉。
這是最好的方法嗎?有沒有更容易,我失蹤?
OP會仍然能夠通過這種技術將'testing'變成'master'嗎? – bfontaine
是的,因爲在這個測試結束時,所有'testing'都是'master'加上堆棧頂部的一個提交。 – dillius
不幸的是,所討論的功能是多次提交的產品,這些提交在歷史中並非彼此相鄰。這個解決方案也會與其他代碼簽出並希望重新合併的其他人混淆。如果您不關心其中的任何一項 - upvoted,那麼這個解決方案也很好。 – Alex