Ich habe ein paar Dateinamen geändert, indem ich den ersten Buchstaben de-capitalize, wie in "Name.jpg" zu "Name.jpg". Git erkennt diese Änderungen nicht und ich musste die Dateien löschen und erneut hochladen. Gibt es eine Möglichkeit, dass Git bei der Prüfung auf Änderungen in Dateinamen die Groß- und Kleinschreibung berücksichtigt? An der Datei selbst habe ich keine Änderungen vorgenommen.
Sie können git mv verwenden:
git mv -f OldFileNameCase newfilenamecase
Git hat eine Konfigurationseinstellung, die angibt, ob Groß- oder Kleinschreibung beachtet werden soll: core.ignorecase
. Um Git die Groß- und Kleinschreibung zu überlassen, setzen Sie diese Einstellung einfach auf false
:
git config core.ignorecase false
Aus der [git config
-Dokumentation] (http://jk.gs/git-config.html):
core.ignorecase
Wenn diese Option auf "true" steht, ermöglicht sie verschiedene Umgehungen, damit Git besser auf Dateisystemen funktioniert, die nicht zwischen Groß- und Kleinschreibung unterscheiden, wie z.B. FAT. Wenn zum Beispiel eine Verzeichnisauflistung
makefile
findet, während GitMakefile
erwartet, nimmt Git an, dass es sich wirklich um dieselbe Datei handelt und merkt sich diese weiterhin alsMakefile
.
Die Voreinstellung ist false, außer git-clone(1) oder git-init(1) prüfen und setzen
core.ignorecase
auf true, wenn das Repository erstellt wird.
Die beiden populärsten Betriebssysteme mit case-insensitive-Dateisystemen, die mir bekannt sind, sind
Das habe ich unter OS X gemacht:
git mv File file.tmp
git mv file.tmp file
Zwei Schritte, weil ich sonst einen "Datei existiert"-Fehler bekam. Vielleicht kann man es in einem Schritt machen, indem man --cached
oder ähnliches hinzufügt.