我在 Mercurial 和 kiln 方面遇到了一些问题,也许你可以给我指出正确的方向。有时,当我提交文件时,它们会被重命名为大写“Assembly.NameSpace”,将更改为“ASSEMBLY.NAMESPACE”,如果我在对它们进行更改后尝试提交,它们将显示为没有被跟踪(附注我发现了有关我提交后重命名的文件)。
无论我做什么,他们都不会被跟踪。我尝试使用控制台添加,使用 hg workbench 似乎没有任何效果。为了让它工作,我需要忘记这些文件,然后提交,然后再次添加它们,然后提交,这对我来说真的很糟糕。
最佳答案
文件是否可能已存在于存储库中,但大小写不同?对于任何需要在真正区分大小写的系统和仅保留大小写的系统上工作的系统来说,“大小写折叠”都是一个问题。 Mercurial 做了很多工作来尽可能地在出现案例折叠问题时进行降级,并且 Mercurial wiki 中有很多相关详细信息。
您在什么操作系统上工作?
当您初始添加文件时,您是使用通配符还是按名称指定它们?
当您添加磁盘上的文件时,它们实际上会改变大小写吗? Mercurial 仅在 update
时更改工作目录中的文件(.hg
之外的内容),因此仅执行 hg add; 似乎几乎不可能; hg commit
将更改工作目录中文件的大小写。
关于Mercurial 将文件名更改为大写并且不跟踪它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10576207/