Hg工作目录修订版不是qtip

时间:2014-01-23 04:01:57

标签: mercurial qtip

我在命令行中使用mercurial Hg。创建补丁后,由于稍后发生了一些错误,我需要恢复到另一个变更集。现在需要刷新补丁文件。在执行Hg qref时,它会显示abort: working directory revision is not qtip。此外,hg parent是一个提示。

2 个答案:

答案 0 :(得分:2)

我将添加一个答案,以帮助将来可能遇到相同错误消息的其他人。我不确定我们的问题是否相同,但肯定是相关的。

我尝试将补丁应用到我的工作目录时“中止:工作目录修订版不是qtip”。 事实证明,我在补丁队列中有较旧的补丁导致了这个问题,在我删除它们之后再次尝试它有效!

这是我做的: 打开控制台窗口并导航到我输入命令的工作目录:

  

hg qseries

这列出了补丁队列。然后删除我输入的旧补丁:

  

hg qdelete [补丁名称(刚刚列出)]

我的案例中的回复是“中止:无法删除已应用的补丁...”并解决了我输入的内容:

  

hg qpop

这个未应用补丁然后我可以再次使用“hg qdelete”命令,现在可以使用。重复此操作,直到所有旧补丁都消失,并尝试再次应用新补丁。

在Bryan O'Sullivan根据第12.7.1节撰写的“Mercurial:The Definitive Guide”中找到了解决方案。 http://tortoisehg.bitbucket.io/hgbook/1.4/managing-change-with-mercurial-queues.html#id2858507

希望有人觉得这很有用!

答案 1 :(得分:0)

这是因为当前的头部弹出队列而发生的。为了刷新,补丁应该被qpush带入队列的头部。