我有一个名为master的存储库,用于保存产品版本.它有几个标签(例如1.0,2.0,3.0)作为基线.当我想为一个版本创建热修复时,例如1.0.我使用如下命令:
hg clone master#1.0 hotfix_1.0.1
cd hotfix_1.0.1
hg tip
changeset: 14:b2492c2611a1
tag: tip
user: codingboy <codingboy@gmail.com>
date: Thu Dec 09 14:03:23 2010 +0800
summary: fix bug4
Run Code Online (Sandbox Code Playgroud)
我发现提示版本是我需要的,但没有标记为1.0.它会导致我在hotfix_1.0.1中的更改无法推送到master.错误是
(abort) unknown 1.0 revision.
Run Code Online (Sandbox Code Playgroud)
我检查主存储库.日志显示如下
changeset: 15:3497c46cbc7f
tag: tip
user: codingboy <codingboy@gmail.com>
date: Thu Dec 09 14:03:27 2010 +0800
summary: Added tag 1.0 for changeset b2492c2611a1
changeset: 14:b2492c2611a1
tag: 1.0
user: codingboy <codingboy@gmail.com>
date: Thu Dec 09 14:03:23 2010 +0800
summary: fix bug4
Run Code Online (Sandbox Code Playgroud)
所以看来克隆的存储库丢失了#15.我的理解是hg clone src#tag dest应克隆我需要的标签.但是这个操作不能克隆变种集#14的子标签.所以我所做的就是使用命令
hg clone master hotfix_1.0.1 -u 1.0
Run Code Online (Sandbox Code Playgroud)
我不喜欢这个命令.如果主存储库是巨大的,我只想修复旧版本,它将浪费时间来克隆和推送更改.
我是否有任何其他方法可以从一个基线或标签正确克隆一个存储库?
谢谢...
| 归档时间: |
|
| 查看次数: |
723 次 |
| 最近记录: |