Git状态显示文件两次但不同的情况

时间:2012-11-20 13:25:20

标签: windows git git-extensions

我试图搜索我的问题,而我最接近的就是这个。

git Status Shows Same File Twice - But with different path slash styles

但它似乎与我的问题不同。

我正在做一个提交,并注意到同一个文件被列出两次但是具有不同的情况。例如,Directory/resource.hDirectory/Resource.h。现在目录resource.h中只有一个文件。如果我通过Git Extensions查看文件,它们看起来完全一样。似乎没有另一个隐藏文件,只有一个文件。

所以我尝试通过删除resource.h文件,提交,然后再添加文件并再次重新尝试来解决此问题。只添加了一个文件。我以为我修复了这个问题,但是现在如果我尝试检查一个不同的分支,我会收到以下错误。

error: The following untracked working tree files would be overwritten by checkout:
    Directory/Resource.h
Please move or remove them before you can switch branches.
Aborting
Done

我真的不知道该怎么做,我只使用Git几个月而且我没有做任何比合并分支和推拉更复杂的事情。

1 个答案:

答案 0 :(得分:16)

如果您拥有ignorecase = false的仓库并且不使用git重命名文件,则可能会在Windows中发生这种情况。要修复,这应该工作

git mv -f Resource.h resource.h
git commit -m 'fix case'

这可以防止它再次发生。

git config core.ignorecase true