Git checkout file - 文件名大小写问题

3


你好,作为一个Git新手,我遇到了一个问题:文件aspnetdb.mdf在之前的提交中被删除,我想从早期的提交中恢复它。我是这样做的:

git checkout master~3 aspnetdb.mdf

想要从第三次提交中获取文件

但是git说没有这个文件。
然后我执行了以下命令:

git checkout master~3 ASPNETDB.MDF

之前的命令git checkout master~3 ASPNETDB_log.ldf(文件名为大写)执行得很好,我得到了需要的文件。

然而,使用小写文件名的命令git checkout master~3 aspnetdb_log.ldf也执行得很好。在整个开发过程中,这两个文件都是以同样的方式处理的(没有任何修改文件名等操作 :) )。

如何解释这种行为?我做错了什么吗?


你是否在 Windows (msysgit) 上并将 core.ignorecase 设置为 true?例如,请参阅 http://wiki.xbmc.org/?title=Git_Usage#Git_.28OSX.2FWindows.29。 - VonC
是的,我正在使用Windows。完全忘记了核心ignorecase设置。谢谢 :) - alex.b
1个回答

2

如评论中所述,由于您在不区分大小写的系统(Windows)上使用Git,请尝试正确设置core.ignorecase。请执行以下操作进行检查:

$ git-config --list

如果没有设置:
$ git-config --global core.ignorecase true

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接