Git: baumelnde Blobs
Ich habe vor kurzem lief git fsck --lost-found
auf mein repository.
Ich erwartet, um zu sehen, ein paar dangling commits, wo ich reset HEAD
.
Jedoch war ich überrascht zu sehen, dass wahrscheinlich über mehrere tausend dangling blob-Nachrichten.
Ich glaube nicht, dass etwas falsch ist mit meinem repository, aber ich bin neugierig, welche Ursachen diese baumelnden blobs? Es gibt nur zwei Menschen, die auf das repository, und wir haben nichts getan, außer gewöhnlich.
Ich würde nicht denken, dass Sie erstellt wurden, indem Sie eine ältere version einer Datei durch eine neue ersetzt, da git müssten zu halten auf beide blobs, so kann Sie Verlauf anzeigen.
Kommen Sie, daran zu denken, an einem Punkt haben wir fügen Sie ein SEHR großes Verzeichnis (mehrere tausend Dateien) für das Projekt, die Fehler und dann entfernen Sie es. Könnte dies die Quelle aller baumeln blobs?
Gerade auf der Suche nach Einblick in dieses Geheimnis.
InformationsquelleAutor der Frage wadesworld | 2012-03-31
Du musst angemeldet sein, um einen Kommentar abzugeben.
Letztes mal schaute ich auf diese stolperte ich über dieser threadspeziell dieser Teil:
Es ist also das normale Verhalten, und nicht gesammelt schließlich, glaube ich.
edit: Per Daniel, Sie können sofort sammeln, indem Sie
InformationsquelleAutor der Antwort Waynn Lue
Wurde ich wirklich ungeduldig und verwendet:
InformationsquelleAutor der Antwort Daniel
Wann immer Sie
add
einer Datei in den index, wird der Inhalt dieser Datei Hinzugefügt, die Git Objekt-Datenbank als blob. Wenn Sie dannreset
/rm --cached
Datei, die blobs noch existieren (Sie wird Müll gesammelt, das nächste mal Sie laufengc
)Jedoch, wenn diese Dateien sind Teil eines commit-und Sie sich später entscheiden zu
reset
Geschichte, dann die alten commits sind immer noch erreichbar aus dem Git - reflog und nur Müll gesammelt, nach einem bestimmten Zeitraum (normalerweise ein Monat, iirc). Diese Objekte sollten nicht als dangling, aber, da Sie immer noch einen Verweis von den reflog.InformationsquelleAutor der Antwort knittl