在我的回购中,我有修改1到10.我已经推高到5(所以下一个hg push将发布版本6-10).
但我现在必须打断我的工作,结果并非100%完成.所以我想将修订版6-10移到一个新的"实验性"分支中,以允许其他人完成工作而不会破坏每个人的来源.
如何将分支添加到非尖端修订版(在我的情况下:从修订版6开始)?或者我应该使用完全不同的方法?
如果不修改历史记录,则无法在事后应用分支名称.
最简单的方法是让其他用户使用修订版5作为他们创建的任何更改的父级.例如,其他用户会:
hg clone <your repo> 甚至 hg clone --rev 5 hg update -r 5hg commit当他们提交更改时,它将在default分支上创建第二个头,但这不会产生任何问题.实验性更改完成后,您只需将两个头合并在一起即可.
话虽这么说,将变更集移动到分支上可以使用Mercurial Queues(MQ)来完成.以下序列显示了如何完成:
hg qinit (创建新的补丁队列)hg qimport --rev 6:10 (将r6-10导入新的补丁队列)hg qpop -a (从工作副本中删除所有补丁)hg branch <branch name> (创建新的实验分支)hg qpush -a (将所有补丁应用到您的分支)hg qfinish -a (将所有补丁转换为永久更改集)| 归档时间: |
|
| 查看次数: |
2042 次 |
| 最近记录: |