首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >“不是头部复习!”以汞为单位

“不是头部复习!”以汞为单位
EN

Stack Overflow用户
提问于 2013-01-18 14:52:52
回答 2查看 26K关注 0票数 50

我在一个小组织工作,只有两个开发人员,我们使用Mercurial版本控制tortoisehg-2.2.2-hg-2.0.2-x86。我对mercurial是个新手。

programmerAprogrammerB为例。

programerA机器上,我创建了一个存储库和一个名为"EFSL"的客户端。programmerB只是一个名为"Uthaya Kumar"的客户端,指向programmerA机器存储库。

当我在programmerA机器中拉取变更集时,它会创建一个新的分支,并且还会在工作目录和存储库中显示"Not a head revision!"错误。

programmerB中,这是可以的。

请看下面的截图。

提前谢谢。

EN

回答 2

Stack Overflow用户

发布于 2013-01-18 16:45:35

检查第一个屏幕截图,可以看到顶行在Rev列中显示为8+。这意味着您的工作副本是基于修订版8的。您可以顺着这条线往下走,还可以看到它在修订版8处连接,这表示相同的事情。

有两种方法可以解决这个问题,这取决于您是否进行了任何更改。

  • 如果您尚未进行任何更改,则应右键单击revision 13并选择Update...。要更新到最新的更改。
  • 如果您已经进行了更改,则需要提交这些更改,然后右键单击revision 13并选择Merge with local...,这将打开一个向导来处理合并。

在您的上一个屏幕截图中,您似乎根本没有工作副本,所以您需要使用上面的更新过程来更新到修订版13。

您可以通过更改TortoiseHg中的设置来自动执行update

从要更改设置的Workbench

  • Choose中,通过选择顶部的相应选项卡,
  1. 选择文件>设置。这些选项对于用户来说是全局的,或者仅适用于左侧列表中的此repository
  2. Select 工作台更新。在右侧的部分中,在Pull Operation
  3. Select

list之后查找标有的下拉列表

这会在你每次拉取的时候更新到最新版本,这样可以避免在你的第一个截图中出现问题。当您和另一个开发人员进行了更改时,您仍然必须进行手动合并。

该列表中的其他选项是rebasefetch,这两个选项都依赖于启用的相应扩展,并且仅用于高级用途。

票数 58
EN

Stack Overflow用户

发布于 2013-01-18 16:52:05

这是Mercurial完全正常和正确的行为。您的工作目录当前已更新为变更集8“合并2”。拉入操作不会更改工作目录的内容。它只是获取丢失的变更集,并将它们添加到您的历史记录图中。在拉出之后,您仍然在处理变更集8。现在出现"Not a head revision“警告您,如果您现在进行任何更改并提交它们,您将创建一个派生自修订版8的新变更集,这将有效地创建一个新的分支。这是你可能想做或不想做的事情。通常,在拉取新的变更集之后,您希望将工作目录更新为最新的变更集,方法是右键单击最新的变更集,然后选择Update...

附注:您使用的不是最新版本的TortoiseHG。请更新到最新版本。它包含了许多改进并解决了许多错误。

票数 32
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14393833

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档