This series refactors some of the 'git repack' internals to keep track of existing packs in a set of string lists stored in a single structure, instead of passing around multiple string lists to different functions throughout the various paths. The result is that the interface around pack deletion, marking packs as redundant, and handling the set of pre-existing packs (both kept and non-kept) is significantly cleaner without introducing any functional changes. I didn't mean to produce so much churn when I started writing these patches, which began as a simple effort to rename a couple of variables for more consistency. Thanks in advance for your review! Taylor Blau (8): builtin/repack.c: extract structure to store existing packs builtin/repack.c: extract marking packs for deletion builtin/repack.c: extract redundant pack cleanup for --geometric builtin/repack.c: extract redundant pack cleanup for existing packs builtin/repack.c: extract `has_existing_non_kept_packs()` builtin/repack.c: store existing cruft packs separately builtin/repack.c: drop `DELETE_PACK` macro builtin/repack.c: extract common cruft pack loop builtin/repack.c | 288 ++++++++++++++++++++++++++++------------------- 1 file changed, 174 insertions(+), 114 deletions(-) -- 2.42.0.119.gca7d13e7bf