0
提交我的提交歷史看起來是這樣的:刪除git的合併從當地歷史
黃色是主分支,藍色和紫色的功能分支。提交0-5已被推送,提交6-10只是本地。
我想撤消合併提交6的效果,我的意思是將其完全刪除,並將C7重新路由爲C1和C2的合併。
有關如何實現此目的的任何想法?
提交我的提交歷史看起來是這樣的:刪除git的合併從當地歷史
黃色是主分支,藍色和紫色的功能分支。提交0-5已被推送,提交6-10只是本地。
我想撤消合併提交6的效果,我的意思是將其完全刪除,並將C7重新路由爲C1和C2的合併。
有關如何實現此目的的任何想法?
這不會很容易,而且由於您需要一些試驗和錯誤,所以在做這件事之前最好拿一份(本地)git回購副本。然後嘗試這樣:
git branch temp <sha-2>
git merge <sha-1>
git merge <sha-5>
git checkout master
git rebase temp
git branch -d temp
創建臨時分支完美工作。我並不需要與C5合併,因爲我想要的是,而不是'git checkout master',我不得不結賬C10,但主要策略像一個魅力。 – ChD 2015-03-25 14:16:46
好的不客氣:) – 2015-03-25 15:15:45