Hinweis : Ich denke nicht, dass dies ein Duplikat dieser Frage ist , bei der es sich um ein Nicht-Hintergrund-Paket handelt, bei dem Git mit einer subtil anderen Fehlermeldung hängt .
In einem meiner Git-Repositories git fetch
druckt Git jedes Mal, wenn ich (zum Beispiel) aufrufe:
Auto packing the repository in background for optimum performance.
See "git help gc" for manual housekeeping.
Es scheint dies jedes Mal zu drucken, wenn ich es git fetch
wiederholt mache , auch wenn es keine Änderungen gibt und nichts git fetch
zu tun ist. Das macht für mich nicht viel Sinn. Dies scheint auch bei anderen Netzwerkoperationen wie git push
und der Fall zu sein git pull
.
Der Befehl kehrt ohne weitere Ausgabe sofort zur Eingabeaufforderung zurück, und ich kann keinen Git-Prozess finden, der auf meinem Computer ausgeführt wird. Dies scheint nur mit diesem Repository und nur auf diesem Computer zu geschehen. git config -l | grep gc
gibt nichts zurück.
Was kann ich tun, um dieses Problem zu diagnostizieren oder zu beheben?
$ git --version
git version 2.0.1
Ich benutze OS X 10.9.
quelle
Antworten:
Ich habe die Lösung aus dem zweiten Kommentar gefunden, den Sie gemacht haben, Trengot, danke. Es stellt sich heraus, dass ich einige baumelnde Blobs hatte, die sich darin befanden
.git/objects/17
und somit das Packen auslösten:Dies räumte sie auf:
Beachten Sie, dass dies laut Henriks Kommentar etwas gefährlich sein kann. Pass auf!
quelle
--prune=now
ein bisschen gefährlich ist. Standardmäßig--prune
bleiben 2 Wochen lang baumelnde Blobs erhalten. Wenn Sie also vor 5 Minuten versehentlich eine falsche Rebase durchgeführt oder gestern einen Zweig entfernt haben, können Sie sich erholen. Sobald Sie diesen Befehl ausführen, verlieren Sie bis jetzt alle baumelnden Blogs - nicht vor 2 Wochen. Auch es scheint , wie Sie es noch nie laufen sollten , während andere Git Befehle in einem anderen Endgerät durchgeführt werden oder Ihre Repo können beschädigt werden.