2012-11-20 387 views
8

私の問題を検索しようとしました。Gitステータスがファイルを2回表示しているが、大文字と小文字が異なる場合があります。

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

しかし、私が持っている同じ問題ではないようです。

私はコミットしていましたが、同じファイルが二重に表示されていたが、大文字と小文字が区別されていることに気づいた。例えば、Directory/resource.hおよびDirectory/Resource.h。ディレクトリresource.hには1つのファイルしか存在しません。 Git Extensionsでファイルを見ると、まったく同じように見えます。別の隠しファイルがないようですが、ファイルは1つだけです。

私はresource.hファイルを削除し、コミットしてから、ファイルを追加してもう一度やり直してこの問題を解決しようとしました。追加されたファイルは1つだけです。私は問題を修正したと思ったが、別の支店をチェックアウトしようとすると、次のエラーが出る。私は本当に私はほんの数ヶ月のためにGitを使用してきたと私は枝をマージし、押し引きよりも複雑な何かをしなければならなかったしていない、ここから何をすべきかどんな考えを持っていない

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 

+0

関連:[GitのWindows上のファイルの変更の場合](http://stackoverflow.com/questions/1793735/git-change-case-of-a-file-on-windows)、[方法Gitがケースで変更を無視するようにするには?](http://stackoverflow.com/questions/52950/how-to-make-git-ignore-changes-in-case) – hammar

答えて

15

これは、ignorecase = falseというレポがあり、gitを使用せずにファイルの名前を変更した場合にWindowsで発生する可能性があります。これを修正するには、これはうまくいくはずです

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

これが再び起こらないようにする必要があります。

git config core.ignorecase true 
関連する問題