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

我试图寻找我的问题,而我所能做到的最接近的就是这个。

git状态显示两次相同的文件 – 但使用不同的path斜杠样式

但是,这似乎不是我有同样的问题。

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

所以我试图解决这个问题,通过删除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,没有比合并分支和推拉更复杂的了。

这可能发生在Windows中,如果你有一个repo与ignorecase = false ,并重命名文件,而不使用git。 要解决,这应该工作

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

这应该防止它再次发生。

 git config core.ignorecase true