Von Gast (nicht überprüft) , 29 April 2026

Die Filter-Sprache

Partial-Clone-Filter werden durch kurze DSL-Strings spezifiziert.

Haufige Filter

  • blob:none — alle Blobs weglassen.
  • blob:limit=<n>[kmg].
  • tree:<depth>.
  • sparse:oid=<blob>.
  • object:type=tag (Git 2.36+).
  • combine:F1+F2+....

Beispiele

git clone --filter=blob:none url big-no-blobs
git clone --filter=blob:limit=10m url big-small-blobs
git clone --filter=tree:0 --no-checkout url history-only
git clone --filter=combine:blob:none+tree:0 url metadata-only

Filter wahlen

AnwendungsfallFilter
Tagliche Entwicklung auf Teilmengeblob:none + sparse-checkout
CI fur spezifische Appblob:none + sparse-checkout cone
Nur Historieanalysetree:0
Grosse Mediendateien getrenntblob:limit=10m
Read-only Release-Deployblob:none + Tag auschecken

Sparse-Filter

blob_oid=$(git hash-object .sparse)
git clone --filter=sparse:oid=$blob_oid url

Kombinieren

git clone --filter=combine:blob%3Anone+tree%3A0 url

Verifikation

git config --get remote.origin.partialclonefilter
git rev-list --missing=print HEAD | wc -l
du -sh .git/objects

Haufige Fehler

tree:0 fur aktive Entwicklung verwenden.