Frage

Ich bin mir nicht ganz sicher, was hier vor sich geht, aber manchmal ändert eine bestimmte Datei in meinem Repository die Groß-/Kleinschreibung ihres Namens.z.B.,:

Vor: File.h

nach: file.h

Es ist mir eigentlich egal, warum das passiert, aber das führt dazu, dass Git denkt, es sei eine neue Datei, und dann muss ich den Dateinamen wieder ändern.Kann man Git einfach dazu bringen, Groß-/Kleinschreibungsänderungen zu ignorieren?

[bearbeiten]Ich vermute, dass Visual Studio etwas Seltsames mit dieser bestimmten Datei macht, da es am häufigsten zu passieren scheint, wenn ich sie nach Änderungen öffne und speichere.Ich habe jedoch keine Möglichkeit, Fehler in VS zu beheben, aber ich hoffe, Git sollte etwas leistungsfähiger sein.

War es hilfreich?

Lösung

Seit Version 1.5.6 gibt es eine ignorecase Option verfügbar in der [core] Abschnitt von .git/config

z.B.hinzufügen ignorecase = true

Um es für nur ein Repo zu ändern, führen Sie in diesem Ordner Folgendes aus:

git config core.ignorecase true

Um es global zu ändern:

git config --global core.ignorecase true

Andere Tipps

In der Git-Version 1.6.1.9 für Windows habe ich festgestellt, dass „ignorecase=true“ in der Konfiguration bereits standardmäßig festgelegt war.

Mit diesem Befehl können Sie git zwingen, die Datei nur in Groß-/Kleinschreibung umzubenennen:

git mv --cached name.txt NAME.TXT

Beachten Sie, dass dadurch die Groß-/Kleinschreibung der Datei in Ihrer ausgecheckten Kopie auf einer Windows-Partition nicht geändert wird, Git jedoch die Groß-/Kleinschreibungsänderung aufzeichnet und Sie diese Änderung festschreiben können.Zukünftige Kassen werden das neue Gehäuse verwenden.

Die in der Frage beschriebene Situation tritt jetzt erneut unter Mac OS X, Git-Version >= 1.7.4 (glaube ich) auf.Die Lösung besteht darin, Ihr „ignorecase=false“ zu setzen und die kleingeschriebenen Dateien (die Git auf diese Weise geändert hat, nicht Visual Studio) von Hand wieder in ihren UsualCase umzubenennen (d. h.'mv meinname MeinName').

Mehr Info Hier.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top