您必須知道一些事情大約GIT中:
- Git的「分支」是不是爲任何其他好 VCS分支機構,爲水銀,鐵,他們是天生的書籤(「分支」標記只有head-changeset和任何舊的changeset不包含這個元數據)
- 當Git-boy談論分支 - 他的謊言,因爲分支只在他的Git世界分支
- Noboby(今天)將轉換Git-在轉換回購中「分支」到分行sitories
- 在大多數情況下(除了非常奇特的Git - 回購)
hg-git
而不是轉換擴展將產生更多的正確的(雙向)轉換
專門爲你我反覆操作,從(普通優秀)VonC answer由您鏈接問題,會告訴你一些照片(Git的從SmartGit,Mercurial的從TortoiseHG)
所有提交後,
GitRepo>git log --oneline
79ea101 third evolution in branch 2
720ac25 second evolution in branch 2
48951c3 first evolution in branch 2
6cf26b0 first content, to be evolved in three different branches
導入到M之前ercurial,所有的「分支」
從Mercurial的POV,進口的結果有很大的不同:倉庫有一個真正的分支(名爲分支default
),並在其3個匿名的樹枝,打上水銀書籤 br1-br2-br3。
你必須創建一個名爲分支機構和手工改寫歷史,如果你想使用水銀命名的分公司,在這個倉庫:
- 提交新的空變更爲0後代,他們會首發分支點
- 重訂匿名分支到這些新的父母(改變實際分支機構)
作爲可選的最後一步,你可以在步驟中除去了創建1空的變更(histedit
做得很好)和所有無用書籤
非常感謝,偉大的解釋!歷史重寫是我在另一個問題上缺少的部分。 – Chris 2014-10-17 10:14:58
@Chris - 順便說一句,你可以(理論上)自動化**歷史變化的所有**部分,除了交互設計histedit – 2014-10-17 13:24:01