我不太确定这里发生了什么,但有时我的存储库中的特定文件会改变它的名称.例如,:
之前: File.h
后: file.h
我真的不在乎为什么会发生这种情况,但这会导致git认为它是一个新文件,然后我必须重新更改文件名.你能不能让git忽略大小写的变化?
[编辑] 我怀疑它是Visual Studio对该特定文件做了一些奇怪的事情,因为它似乎最常发生在我打开并在更改后保存它.我没有办法修复VS中的错误,但我希望git应该更有能力.
由于1.5.6版本有一个ignorecase
在可用选项[core]
的部分.git/config
例如,添加 ignorecase = true
要仅为一个仓库更改它,请从该文件夹运行:
git config core.ignorecase true
要全局更改它:
git config --global core.ignorecase true
您可以使用此命令强制git以仅大小写的方式重命名文件:
git mv --cached name.txt NAME.TXT
请注意,这不会更改Windows分区上签出副本中文件的大小写,但git会记录大小写更改,您可以提交更改.未来的结账将使用新的外壳.
在Windows的git版本1.6.1.9中,我发现默认情况下已经在config中设置了"ignorecase = true".
问题中描述的情况现在在Mac OS X中重新出现,git版本> = 1.7.4(我认为)。解决方法是手动设置您的ignorecase = false并将小写的文件(git以此方式更改,而不是Visual Studio)重命名为它们的UsualCase(即“ mv myname MyName”)。
更多信息在这里。