好的问题是有两个文件:readme和README
如何删除存储库中的自述文件?
当我更新时,我收到此错误 abort:自述文件和README之间的大小写折叠
答案 0 :(得分:14)
Mercurial可以处理同一目录中的文件名,这些文件名仅在其存储库(repo顶级.hg
目录)中的情况不同。在区分大小写的文件系统上(大多数在unix上),它也可以处理工作目录中的那些文件。但是,在仅仅保持大小写的系统上,操作系统不允许您在同一目录中有两个文件,这些文件只有大小写不同而且Mercurial会警告您(如您所见)。
要解决此操作系统的限制,请在区分大小写的文件系统上检出克隆,删除该文件,然后提交/推送。只要windows人员hg updating
没有碰撞的修订版就可以了(因为它可以放在存储库中,而不是在他们的工作目录中)。
答案 1 :(得分:1)
这个问题是重复的,可以折叠成Resolving Mercurial Case-Folding Collision in Windows
我同意那里的评论,即使使用Cygwin,要求某人在区分大小写的文件系统中工作有点笨拙。假设有两个文件的最干净的解决方案似乎是:
答案 2 :(得分:1)
假设您希望自述文件为自述文件。
hg mv readme foofile
hg mv foofile README
执行此操作并提交这些更改,并且repo应该可以再次使用。
答案 3 :(得分:0)
如果是重命名,那就像abc.txt那样移动到Abc.txt
以下是否有效?
拿一个补丁, 查看代码新鲜, 在它上面应用补丁。 然后提交n push
答案 4 :(得分:0)
我遇到了这个问题,当我对特定版本执行Update
时发生了案例冲突。有问题的修订是专门为解决案例折叠冲突而执行的,我重命名了该文件。不幸的是,Mercurial不允许我Update
进行修订。
但是,我仍然可以Update
之前和之后进行修订。因此,如果您在Windows(或类似的不区分大小写的文件系统)上遇到此问题而只是Update
特定修订版,您可以通过Update
绕过问题修订版之前或之后。