有时,在使用 MercurialEclipse 插件执行变基时,我的存储库会陷入奇怪的状态。它将陷入“变基”状态,但是当我尝试中止变基(例如“hg rebase -a”)时,我收到以下错误消息:
中止:未知修订版“ xxxx ”!
其中 xxxx 是修订哈希。通常在这一点上,我已经放弃了执行 rebase 的所有希望——我只是想回到我的存储库没有搞砸的更快乐的时光。到目前为止,我的解决方案是核对我的项目目录并再次克隆它。有没有更温和的解决方案?
有时,在使用 MercurialEclipse 插件执行变基时,我的存储库会陷入奇怪的状态。它将陷入“变基”状态,但是当我尝试中止变基(例如“hg rebase -a”)时,我收到以下错误消息:
中止:未知修订版“ xxxx ”!
其中 xxxx 是修订哈希。通常在这一点上,我已经放弃了执行 rebase 的所有希望——我只是想回到我的存储库没有搞砸的更快乐的时光。到目前为止,我的解决方案是核对我的项目目录并再次克隆它。有没有更温和的解决方案?
只需删除 .hg/rebasestate,您的 repo 就可以工作了。
这个线程中描述的补丁调用了内部函数 clearstate ,它只是取消了这个文件的链接。
在与此类似的情况下,我通常会这样做:
$ hg check
$ hg verify
$ hg up -C default
而不是default
,使用您正在处理的任何分支。这需要时间,但重新克隆 repo 也是如此。
它通常会有所帮助。