Expand description
Pack geometry for git repack --geometric (factor-based progression).
Mirrors the split logic in Git’s repack-geometry.c: packs are weighted by
object count from their index, sorted ascending, then a split index separates
packs that will be rolled into a new pack from those retained.
Structs§
- Geometric
Pack - One local pack considered for geometric repacking.
Functions§
- collect_
geometry_ packs - Load eligible non-promisor packs from
objects_dir/packfor geometry. - collect_
promisor_ geometry_ packs - Promisor packs only (sibling
.promisormarker), for a second geometry pass. - compute_
geometry_ split - Split packs into “roll up” vs “keep” using Git’s geometric progression rules.
- preferred_
pack_ stem_ after_ split - Preferred pack stem (largest retained non-promisor pack), for MIDX
--preferred-pack.