Mercurial中重新绑定时出现“Unknown Parent”错误

时间:2013-04-20 18:00:58

标签: mercurial

我不小心剥掉了错误的变更集;但是,我保存了备份,但是当我尝试使用hg unbundle .hg/strip-backup/faa0a1895b97-backup.hg解开它们时,我收到以下错误:

adding changesets
transaction abort!
rollback completed
abort: 00changelog.i@561fe01204b5: unknown parent!

我该怎么做才能纠正这个问题?

以下是hg verify的整个输出:

checking changesets
checking manifests                                                              
crosschecking files in changesets and manifests                                 
checking files

1 个答案:

答案 0 :(得分:0)

如果unbundle告诉你它不能应用捆绑包那么那个“first”的父变更设置那个捆绑包,捆绑包基础,在你的仓库中不存在。由于repos永远不会丢失使用普通mercurial命令的变更集(条带不正常),因此您似乎使用strip或其他一些历史记录更改非正常使用命令来更改或删除该变更集。

尝试浏览所有.hg/strip-backup/个文件并逐个应用。也许其中一个确实适用并包含您尝试应用的条带备份所需的父级。

Tl; Dr:没有正常的mercurial命令会删除任何内容,而非正常的命令会创建备份。除非您在带外删除文件,否则数据就在某处。