是否可以在Mercurial中將一系列修訂從一個分支合併到另一個分支?在Mercurial中合併來自另一個分支的選定修訂版
例如
|r1
|r2
|r3
|\___
| | r5
| | r6
| | r7
| | ...
| | r40
|r41
如果我想合併的版本6 & 7,而不是5,主分支 - 這可能嗎?
這樣的合併可以是微不足道的,例如,如果R 5改性未在6 & 7(和因此其變化,如果不需要的話,可以放心地忽略)
改性什麼有關多個選中的版本的文件範圍從分支A到分支B?例如合併4-7,20-25和30-34?
(這是不是一個真實的案例,只是說明。我想了解是否有汞本次修訂範圍合併功能,我知道svn的)
r6必須以任何有意義的方式依賴r5是不正確的。例如,它可能是因爲r5只更改了某些其他修訂不會觸及的文件,所以忽略該特定修訂(從數據爲中心的觀點)絕對沒有問題。請不要以爲我以這種方式使用hg,我只是想了解它的功能。 – 2010-04-02 18:15:13
另外,我沒有完全明白你的意思是樹應該看起來。你的樹圖顯示了幾個修訂版本很少的分支。這是hg的精神 - 只有短枝?因爲有時候你只需要一個單獨的分支來做大量的工作,而這些工作不在幹線上。如果你維護許多歷史版本,每個版本都有一個版本庫是不可行的,所以分支機構是唯一合理的解決方案。那麼你如何建議將這些分支保持在較短的時間?爲什麼在需要的時候會比擁有多個不同的分支更好呢? – 2010-04-02 18:24:42
r6取決於r5,因爲你說過當你做r5 r6的父母時。如果你想避免這種情況,並且他們確實是不相關的,你可以在更改之前給另一個父母「更新」6.如果在做r6之前你做了'hg update r4',那麼r6的父母將是r4,而你可以將它轉移到任何已經具有r4的開發分支。 從最廣義的意義上來說,在改變時問自己「歷史上最早的一點是什麼,我可以做到這一點」,然後「更新」到那一點。然後,您可以在任何有意義的地方輕鬆合併變更集。 – 2010-04-02 21:29:59