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