3
A
回答
5
你可以讓他們命名分支的唯一方法是重寫他們的歷史,因爲分支的名字是歷史的一部分。然而,如果你可以在沒有分支機構過去的命名的情況下生存下來(未來是好的),那麼你可以把所有的回購機制放入主體(不合並!),然後在你的分支機構進入時標記你的分支機構。
舉例來說,如果你有MainRepo,Feature1Repo和Feature2Repo,你會做以下幾點:
$ cd MainRepo
$ hg pull ../Feature1Repo
$ hg pull ../Feature2Repo
現在,如果你像TortoiseHg看DAG,你會看到一對夫婦不同的頭。從這裏,你只是hg up
和hg branch
:
$ hg up feature1headrev
$ hg branch Feature1
$ hg up feature2headrev
$ hg branch Feature2
從這裏向前,你有你命名的分支機構。
注意:如果hg pull
抱怨存儲庫不相關,則可以執行hg pull -f
,這將在存儲庫中創建多個尾部。這通常不是真正的分支,但它有時是有用的。
3
您可以使用hg export
創建一組更改,然後將它們hg import
分配給您的新分支。
比方說,你有一個共同的基礎,revA,然後兩個克隆,每個克隆分別從revA到revB和revC。
在第一個克隆:hg export -r revA -r revB > revB.patch
在第二克隆:hg export -r revA -r revC > revC.patch
現在你有一個包含在克隆的所有更改兩個補丁。
在原有的庫:
hg up revA
hg branch branchB
hg commit
hg import revB.patch
hg up revA
hg branch branchC
hg commit
hg import revC.patch
現在你有兩個命名分支從REVA分歧。如果您在revA-> revB或revA-> revC之間的區域進行合併,我不確定這會完美保留它們。
另一種選擇是使用移植擴展。或者,您可以將克隆的更改推入一個回購庫,然後將創建的頭移至新分支。
相關問題
- 1. 將本地Perforce工作區克隆/轉換爲Mercurial Repo
- 2. 將淺克隆轉換爲完整克隆
- 3. 將git完整克隆轉換爲淺克隆
- 4. Mercurial - 克隆克隆另一個回購
- 5. Mercurial,本地克隆
- 6. 克隆遠程分支導致克隆所有遠程分支...爲什麼?
- 7. Mercurial&web sites:何時分支,何時克隆?
- 8. 克隆/分支,並通過多種版本的Mercurial
- 9. Mercurial:在克隆時顯式指定分支/標記/書籤
- 10. Mercurial - 一次克隆所有遠程分支
- 11. Mercurial中的廉價克隆/本地分支
- 12. 合併變更集之前的mercurial克隆分支
- 13. 將git克隆到分支中
- 14. Mercurial:在我的mercurial項目中只克隆版本庫的一個分支
- 15. Git拉/克隆分支
- 16. GIT - 克隆本地分支
- 17. TortoiseGit克隆遠程分支
- 18. 將hg分支轉換爲git分支?
- 19. 如何將Mercurial克隆到Subversion?
- 20. Mercurial:無法克隆項目
- 21. mercurial克隆數據inegrity
- 22. Mercurial否認克隆/拉?
- 23. 將Git Repo轉換爲Mercurial
- 24. mercurial的最佳實踐:分支與克隆以及部分合並?
- 25. 可以用bazaar,mercurial或git做一個部分克隆/分支嗎?
- 26. GitHub/Aquamacs24 - 克隆 - 分離主分支
- 27. 將分支轉換爲分叉副本
- 28. 將克隆的git倉庫轉換成分叉的倉庫
- 29. 將Mercurial變更集從我的本地克隆推送到「真正的」克隆?
- 30. git淺克隆以及分支
你可以擴展一下嗎?我仍然在學習版本控制,並且仍然熟悉Mercurial的工作方式。 – 2010-07-26 20:25:02
@奧斯汀海德你走了。 – Borealid 2010-07-26 20:35:16