Das .git / -Objekt in meinem Rails-Projektverzeichnis ist immer noch riesig, nachdem Hunderte von Megabyte versehentlich generierten Mülls gelöscht wurden.
Ich habe versucht git add -A
, sowie andere Befehle, um den Index zu aktualisieren und nicht vorhandene Dateien zu entfernen. Ich habe möglicherweise fälschlicherweise festgestellt, dass die Dateien mit zwei Zeichennamen im Verzeichnis Blobs sind. Ich habe versucht, zu früheren Commits zurückzukehren, aber kein Glück.
Was kann ich tun, um dieses Verzeichnis zu bereinigen?
file://foo
URL ist relativ zum aktuellen Verzeichnis und afile:///home/me/foo
(drei Schrägstriche) ist absolut.Haben Sie den
git gc
Befehl ausprobiert ?quelle
git gc --aggressive --prune
funktioniert bei mir.git gc
nicht. Möglicherweise reicht die Standardeinstellung nicht aus.Sparkleshare hat 13 GB tmp_pack_-Dateien in meinem Git erstellt, nachdem es nicht gelungen war, mehrmals ein großes Einchecken von Bildern durchzuführen. Das einzige was half war ...
'git gc' hat diese Dateien nicht entfernt.
quelle
Wenn Sie nach dem Beschneiden und Umpacken (
gc --aggressive --prune=tomorrow
...) immer noch ein großes Repo haben , können Sie einfach nach dem ungeraden suchen:Dadurch erhalten Sie eine sortierte Liste von Objekten in aufsteigender Größe. Sie könnten git-filter-branch verwenden, um den Täter aus Ihrem Repo zu entfernen.
Siehe „Entfernen von Objekten“ in http://progit.org/book/ch9-7.html zur Führung
quelle
--aggressive
. Versucht zu bearbeiten, aber es stellt sich heraus, dass Sie einen so kleinen Tippfehler nicht bearbeiten können.Rekursiv:
quelle