2014-08-28 90 views
0

合併我有followng形式的善變回購:刪除與祖先

... 27-28----------------------38-39 ... tip 
     \__ 29 __ ... __ 37__/ 

你可以看到,我已經無意中合併成37 28,創造38我怎樣才能解決這個問題,讓我得到一個簡單的線性歷史,如下:

... 27-28-29-...-37-39-...tip 
+1

你的合併是公開的嗎,即你推出它嗎?一旦變更是公開的,它是不可改變的,不能改變或移動。另外,爲什麼你想要一個線性歷史?你想解決什麼問題? – 2014-08-28 14:38:21

+0

不,它尚未發佈。爲什麼我需要它沒有強有力的理由。我只是好奇而已。 – user3905553 2014-08-28 16:22:50

回答

1

有沒有簡單的方法來做到這一點。您可能可以使用convert擴展名,使用--branch-map參數重建帶有該歷史記錄的存儲庫,並根據需要手動將它們拼接在一起,但會使所有現有的克隆無效,更改哈希,並且很難做到。不要迷戀線性歷史 - 匿名分支和合並是正常DVCS工作流的一部分。擁抱它。

1

如果沒有推,最簡單的就是在37上方rebase 39(和後代),並簡單地strip變更38

你會得到你的線性的歷史,但作爲@ Ry4an說, 「擁抱」你的歷史將不會是線性的事實,否則它只會讓你不快樂......