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. Mercurial - 克隆克隆另一個回購
- 3. 克隆/分支,並通過多種版本的Mercurial
- 4. Mercurial:在克隆時顯式指定分支/標記/書籤
- 5. Mercurial - 一次克隆所有遠程分支
- 6. Mercurial中的廉價克隆/本地分支
- 7. Mercurial&web sites:何時分支,何時克隆?
- 8. 將git克隆到分支中
- 9. Git拉/克隆分支
- 10. 如何將Mercurial克隆到Subversion?
- 11. Mercurial否認克隆/拉?
- 12. Mercurial:無法克隆項目
- 13. GitHub/Aquamacs24 - 克隆 - 分離主分支
- 14. 可以用bazaar,mercurial或git做一個部分克隆/分支嗎?
- 15. mercurial的最佳實踐:分支與克隆以及部分合並?
- 16. 將分支轉換爲分叉副本
- 17. 將克隆的git倉庫轉換成分叉的倉庫
- 18. 將Mercurial變更集從我的本地克隆推送到「真正的」克隆?
- 19. 試圖克隆使用Git分支,但
- 20. Git自動跟蹤分支克隆
- 21. 在克隆分支合併到原點
- 22. 本地克隆未知的Git分支
- 23. 無法克隆開發分支
- 24. 如何用git-p4克隆分支?
- 25. 關於Git克隆和分支
- 26. 刪除淺克隆中的分支
- 27. 僅克隆Github上的特定分支?
- 28. Github上克隆遠程分支錯誤
- 29. GitPython如何克隆所有分支?
- 30. 從Google Cloud克隆特定分支
你可以擴展一下嗎?我仍然在學習版本控制,並且仍然熟悉Mercurial的工作方式。 – 2010-07-26 20:25:02
@奧斯汀海德你走了。 – Borealid 2010-07-26 20:35:16