Mercurial创建没有父母的变更集

时间:2015-03-17 14:03:02

标签: mercurial

我在Mercurial遇到了一个相当奇怪的结果。我有一个存储库,它自动将更改从CVS存储库合并到命名分支“someBranch”。它都是脚本化的,在mercurial端使用的唯一命令是

hg ci -A -u someUser -m someMessage
hg push

这很好用了一段时间。今天,我注意到hg push命令最近停止工作,告诉我它正在someBranch上创建新的远程磁头。

我试图找出发生了什么。同步已停止使用changset 168091.使用

hg log -G

获得:

o  changeset:   168092:88b141ad6ac5
|  branch:      someBranch
|  user:        someUser
|  date:        Mon Mar 02 16:59:06 2015 +0100
|  summary:     someMessage.
|
o  changeset:   168091:972642c90d59
   branch:      someBranch
   parent:      -1:000000000000
   user:        someUser
   date:        Mon Mar 02 16:58:59 2015 +0100
   summary:     someMessage.

o  changeset:   168090:551d2e1bdbfd
|  branch:      someBranch
|  user:        someUser
|  date:        Mon Mar 02 16:58:52 2015 +0100
|  summary:     someMessage.
|

这显然意味着168091不被理解为168090的孩子,这解释了为什么推动不起作用。

是否有人知道如何提交产生新的根?这种行为对我来说很奇怪,我想知道它是否是Mercurial的错误?我使用的是3.2.4版本。我不是在Windows上运行。

1 个答案:

答案 0 :(得分:0)

您是否在Windows共享上使用存储库?在某些版本中存在导致类似效果的硬链接错误。这在版本3.3.2中得到解决。

请参阅WhatsNew in Mercurial 3.3.2

  

Mercurial 3.3.2(2015-03-02)

     

要修复的计划外错误修复版本...

     

事务:确实禁用了硬链接备份(issue4546