Il problema dei molti pack
Un repo con molti packfile deve cercare in ognuno per localizzare un oggetto — ricerca binaria per pack. Il multi-pack-index (MIDX) consolida tutti gli indici di pack in una sola ricerca binaria.
Scrittura
git multi-pack-index write
git multi-pack-index verify
git multi-pack-index expire
git multi-pack-index repack --batch-size=2g
Configurazione
git config core.multiPackIndex true
git config maintenance.multi-pack-index.enabled true
Bitmap MIDX (Git 2.34+)
git multi-pack-index write --bitmap
git config repack.writeBitmaps true
git config pack.writeBitmaps true
Integrazione geometrica
MIDX brilla in coppia con il repack geometrico.
Verifica
git multi-pack-index verify
git fsck --multi-pack-index
ls -la .git/objects/pack/multi-pack-index*
Errori comuni
Cancellare manualmente i file pack referenziati dal MIDX.
Impatto sulle performance
Su un repo con 50+ pack, il tempo di lookup oggetti puo scendere 5-10x.