无法使用Mercurial'修复Hg机箱折叠碰撞错误;导游

无法使用Mercurial'修复Hg机箱折叠碰撞错误;导游,mercurial,checkout,case-sensitive,case-insensitive,Mercurial,Checkout,Case Sensitive,Case Insensitive,Mercurial的修复案例折叠碰撞指南是否有问题,或者我实施解决方案的方式是否有问题 上提供的解决方案如下: hg clone -U my-repo-url repair cd repair hg debugsetparent 160 hg debugrebuildstate hg status (reveals that everything is 'missing' (!)) hg rm -A Somefile.bash (responds that SomeFile.bash has b

Mercurial的修复案例折叠碰撞指南是否有问题,或者我实施解决方案的方式是否有问题

上提供的解决方案如下:

hg clone -U my-repo-url repair
cd repair
hg debugsetparent 160
hg debugrebuildstate
hg status (reveals that everything is 'missing' (!))
hg rm -A Somefile.bash (responds that SomeFile.bash has been removed, notice case change)
hg ci -m "Fixed the collision... I hope."
hg co tip

hg update -C tip
要取回所有文件,我们只需再次签出:

hg co tip
问题文件是:
SomeFile.bash
SomeFile.bash
。我最初有
Somefile.bash
,现在我希望它是
Somefile.bash
。另外要注意的是,版本157是快乐的,没有冲突,但是版本158是我引入冲突的地方。存储库负责人目前的版本为160

我实施了以下解决方案:

hg clone -U my-repo-url repair
cd repair
hg debugsetparent 160
hg debugrebuildstate
hg status (reveals that everything is 'missing' (!))
hg rm -A Somefile.bash (responds that SomeFile.bash has been removed, notice case change)
hg ci -m "Fixed the collision... I hope."
hg co tip

hg update -C tip
根据指南,这应该已经消除了箱子折叠碰撞,并将其余丢失的文件带回来,但是另一个
hg status
显示所有东西仍然丢失(!)

编辑:通过将最后一个命令(更新)附加到现有命令,我能够恢复丢失的文件,从而解决了问题的其余部分

注意:我必须使用
的最新“问题”版本来修复此问题(在我的情况下是160)

试试看

hg update -C tip
那会把文件带回来的。如果不是,请尝试还原所有内容:

hg revert -r tip -a
试一试

那会把文件带回来的。如果不是,请尝试还原所有内容:

hg revert -r tip -a

请提供您发出的命令的确切顺序(包括实际版本号)。假设您没有打开像
inotify
这样糟糕的东西,可能是您误解了
的用途。请参阅我上面提供的编辑。@Ryan我上面的编辑是否说明了为什么这个过程对我不起作用?请提供您发出的命令的确切顺序(包括实际修订号)。假设您没有打开像
inotify
这样糟糕的东西,可能是因为您误解了
的用法。请参阅我上面提供的编辑。@Ryan我上面的编辑是否说明了为什么这个过程对我不起作用?从答案的第一部分执行命令(
hg update-C tip
)在上述命令完成之后。这会拉入所有缺失的文件。谢谢!在上述命令完成之后执行答案第一部分的命令(
hg update-C tip
),这会拉入所有缺失的文件。谢谢!
hg revert -r tip -a