Ich denke, es sollte funktionieren, das umzubenennende Verzeichnis in ein neues Verzeichnis mit dem gewünschten Namen zu kopieren, und das alte Verzeichnis löschen und git add
, git commit
y push
alles. Aber ist das der beste Weg?
Antworten
Zu viele Anzeigen?Bei der Umbenennung wird zwischen Groß- und Kleinschreibung unterschieden, git mv somefolder someFolder
hat bei mir schon früher funktioniert, aber heute aus irgendeinem Grund nicht. Also habe ich als Abhilfe einen neuen Ordner erstellt temp
den gesamten Inhalt von somefolder
in temp
, gelöscht somefolder
begangen hat, die temp
dann erstellt someFolder
den gesamten Inhalt von temp
in someFolder
, gelöscht temp
, engagiert und engagiert someFolder
und es hat funktioniert! Wird angezeigt als someFolder
in Git.
Die Umbenennung in Git ist schwierig, da der Index geändert werden muss und das Baumobjekt nach der Übergabe erstellt wird. Ich hatte das Problem der Umbenennung t emplates zu T emplates... Ich löste das Problem durch
- Kopieren von Templates nach templates in bash [cp -r Templates templates ] (git mv Templates templates wird nicht funktionieren )
- Templates in der Bash entfernen [rm -r Templates ](vorher prüfen, ob das Kopieren erfolgreich war)
- Entfernen der Datei "Templates" aus dem Index [mit "git ls-files -s" wird der Index angezeigt, mit "git rm " können Sie Platzhalter wie "git rm Templates/*" verwenden und den Index weiter prüfen]
- Hinzufügen der umbenannten Pfade zum Index ("git add -v ." und Überprüfung des Ergebnisses mit "git ls-files -s"
- Commit ["git commit -m "Umbenennung ... "
- Wenn Sie über Fernzugriffsrechte verfügen, können Sie git push <auf den Ursprung anwenden,
Benennen Sie den Ordner einfach um. git ist ein "content-tracker", so dass die SHA1-Hashes gleich bleiben und git weiß, dass Sie ihn umbenannt haben. Das einzige, was sich ändert, ist das Baum-Objekt.
$ rm <directory> // remove the directory
$ git add . // add changes to the git
$ git commit // commit removed directory
- See previous answers
- Weitere Antworten anzeigen