繁体   English   中英

Mercurial Hg的“不是修订版!”

[英]“Not a head revision!” in Mercurial Hg

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

考虑programmerAprogrammerB

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

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

programmerB它很好。

请参阅下面的屏幕截图。

提前致谢。

屏幕截图1屏幕截图2屏幕截图3

检查第一个屏幕截图,并在Rev列中看到顶行显示8+ 这意味着您的工作副本基于版本8.您可以按照该行关闭,并且还可以看到它在版本8处加入,这表示相同的内容。

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

  • 如果您没有进行任何更改,那么您可以右键单击修订版13并选择更新.... 更新到最新的更改。

  • 如果您已进行更改,则需要提交这些更改,然后右键单击修订版13并选择“ 与本地合并...” ,这将打开一个向导来处理合并。

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

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

  1. Workbench选择File > Settings
  2. 通过选择顶部的相应选项卡,选择要更改设置的位置。 这些选择对用户来说是全局的,或者只是对于此存储库
  3. 在左侧列表中选择Workbench
  4. 在右侧部分中,查找标记为After Pull Operation的下拉列表
  5. 从列表中选择更新

这将在每次执行拉动时更新到最新版本,这将避免您的第一个屏幕截图中的问题。 当您和其他开发人员进行更改时,您仍然需要进行手动合并。

该列表中的其他选项是rebasefetch ,它们都依赖于启用的相应扩展,仅供高级用途使用。

这是Mercurial完全正常和正确的行为。 您的工作目录当前已更新为changeset 8“Merge 2”。 pull操作不会更改工作目录的内容。 它只是缺少变更集并将它们添加到历史图表中。 拉动之后你仍在使用变更集8.现在,“不是头部修订版”似乎警告你,如果你现在进行任何更改并提交它们,你将创建一个派生自版本8的新变更集,它将有效地创建一个新的分支。 这是您可能想要或可能不想做的事情。 通常在提取新的变更集之后,您需要通过右键单击最新的变更集并选择更新来将工作目录更新为最新的变更集。

PS你没有使用TortoiseHG的最新版本。 请更新到最新版本。 它包含许多改进并解决了许多错误。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM