Git-Repository aufräumen: Verlauf, Zweige und Speicherplatz

Rubrik
Software & Werkzeuge
Veröffentlicht am
08. Juli 2026
Lesezeit
6 Min. Lesezeit
Git-Repository aufräumen: Verlauf, Zweige und Speicherplatz

Ein Repository, das drei Jahre lebt, sammelt Altlasten: verwaiste Zweige, versehentlich eingecheckte Archive, einen Verlauf, den niemand mehr liest. Die Aufräumarbeit ist überschaubar, wenn man sie in der richtigen Reihenfolge angeht.

Zweige zuerst aufräumen

git branch --merged main listet alle Zweige, deren Änderungen bereits in der Hauptlinie stecken. Diese lassen sich gefahrlos löschen. git remote prune origin entfernt lokale Verweise auf Zweige, die auf dem Server längst verschwunden sind. In Projekten mit mehreren Beitragenden sammeln sich davon schnell dreistellige Mengen an.

Große Objekte im Verlauf finden

Ein Repository von 800 Megabyte enthält selten 800 Megabyte Quelltext. Meistens steckt darin eine versehentlich eingecheckte Datenbanksicherung oder ein Ordner mit Bildern. git count-objects -vH zeigt die tatsächliche Größe der Objektdatenbank. Anschließend fördert git rev-list --objects --all in Kombination mit git cat-file --batch-check die größten Objekte zutage.

Ein Repository ist ein Protokoll von Entscheidungen. Alles, was keine Entscheidung dokumentiert, gehört nicht hinein.

Verlauf umschreiben, aber mit Vorsicht

Große Dateien nachträglich zu entfernen bedeutet, den Verlauf umzuschreiben. Das ändert sämtliche Commit-Kennungen ab dem Eingriffspunkt. Alle Beteiligten müssen anschließend neu klonen, sonst entstehen doppelte Verläufe. Kündigen Sie den Eingriff an, führen Sie ihn zu einem festgelegten Zeitpunkt durch, und legen Sie vorher eine vollständige Kopie des Repositorys beiseite.

Die Reihenfolge, die sich bewährt hat:

  • Sicherungskopie des gesamten Verzeichnisses anlegen;
  • zusammengeführte Zweige lokal und auf dem Server löschen;
  • .gitignore ergänzen, damit die Ursache verschwindet;
  • erst danach den Verlauf anfassen, falls überhaupt nötig.

Häufig genügt der dritte Schritt. Ein Repository mit ein paar hundert Megabyte Altlast kostet beim Klonen zwar Zeit, ein umgeschriebener Verlauf kostet ein Team dagegen einen halben Arbeitstag und mindestens einen verlorenen Zweig.

0x1

Auf demselben Bus