Git unter Windows: Zweig kann nach dem Umbenennen einer Datei nicht gewechselt werden (nur Groß- / Kleinschreibung wurde geändert)

Ich arbeite mit Git unter Windows und habe eine Datei in meinem Repo, sagen wir "foo.txt". Heute wollte ich diese Datei in "Foo.txt" (Großbuchstaben) umbenennen. Wie in vorgeschlagendiese SO Frage, Ich benutztegit mv -f foo.txt Foo.txt, was das gewünschte Ergebnis erbrachte. Ich ging weiter zuverpflichten die änderung an meinem repo.
BEARBEITEN: Ich würde mir wünschen, dass dies eine dauerhafte Änderung ist, und dass ich dennoch in der Lage bin, eine Prüfung durchzuführen, die vor dieser Änderung stattgefunden hat.

Danach trat jedoch ein Fehler auf, als ich versuchte, den Zweig zu wechseln:

# I'm on branch1  
git checkout branch2  
Aborting  
error: The following untracked working tree files would be overwritten by checkout:  
Foo.txt  
Please move or remove them before you can switch branches.  

Nach einigem Stöbern stellte ich fest, dass meine.git/config Datei hatte die folgende Einstellung:

[core]  
    ignorecase=false  

Wenn ich dies auf true ändere, scheint sich das Problem zu beheben, und ich kann wie gewohnt zwischen Zweigen wechseln.

Daher würde ich gerne wissen:

Gibt es irgendwelche nachteiligen Auswirkungen dieser Einstellung? Sollte es unter Windows immer so sein? Was ist, wenn ich mit anderen Entwicklern zusammenarbeite und sie nicht den gleichen Wert dafür haben?Gibt es eine andere Möglichkeit, die Datei umzubenennen, ohne diese Einstellung ändern zu müssen?Warum passiert das überhaupt? Als ich die Änderung festgeschrieben habe, hat git richtig erkannt, dass die Datei tatsächlich umbenannt wurde (eine Datei wurde nicht gelöscht und dann eine andere hinzugefügt). Was genau ist passiert, als ich versucht habe, die Filiale zu wechseln?

Vielen Dank!

Antworten auf die Frage(2)

Ihre Antwort auf die Frage