git repack

Verwaltung

Packt lose Objekte in Packfiles


Der Befehl 'git repack' fasst lose Objekte (eine Datei pro Objekt) zu Packfiles zusammen — komprimierten Dateien, die ähnliche Versionen als kleine Deltas speichern. Gepackte Repositorys sind viel kleiner und schneller. git gc ruft ihn für dich auf; direkt nutzt man ihn zur Feinabstimmung.

Syntax

git repack [-a] [-d] [-f] [--depth=<n>] [--window=<n>]
[ ] optional| oder<arg> Platzhalter... wiederholbar--flag Option

Beispiele

Alles packen, alte Packs verwerfen

git repack -a -d

Ein aufgeräumtes Packfile.

Workflow-Beispiele

1
git count-objects -v

Anzahl und Größe loser Objekte

2
git repack -a -d

Packen

3
git count-objects -v

Die losen Objekte sind weg

Fehlerbehebung

Das Neupacken dauert sehr lange

Ursache: --aggressive oder großes --window bei einem großen Repository

Nutze die Standardwerte über git gc

Tipps & Stolperfallen

Best Practices

  • ✓Nimm git gc, außer du weißt, warum du repack-Optionen brauchst.

FAQ

A:

Ja, es entfernt nie erreichbare Objekte.