pack-objects: include number of packs reused in output

In addition to including the number of objects reused verbatim from a
reuse-pack, include the number of packs from which objects were reused.

Signed-off-by: Taylor Blau <me@ttaylorr.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Taylor Blau
2023-12-14 17:24:20 -05:00
committed by Junio C Hamano
parent ca0fd69e37
commit b96289a10b

View File

@ -223,6 +223,7 @@ static struct progress *progress_state;
static struct bitmapped_pack *reuse_packfiles; static struct bitmapped_pack *reuse_packfiles;
static size_t reuse_packfiles_nr; static size_t reuse_packfiles_nr;
static size_t reuse_packfiles_used_nr;
static uint32_t reuse_packfile_objects; static uint32_t reuse_packfile_objects;
static struct bitmap *reuse_packfile_bitmap; static struct bitmap *reuse_packfile_bitmap;
@ -1265,6 +1266,8 @@ static void write_pack_file(void)
for (j = 0; j < reuse_packfiles_nr; j++) { for (j = 0; j < reuse_packfiles_nr; j++) {
reused_chunks_nr = 0; reused_chunks_nr = 0;
write_reused_pack(&reuse_packfiles[j], f); write_reused_pack(&reuse_packfiles[j], f);
if (reused_chunks_nr)
reuse_packfiles_used_nr++;
} }
offset = hashfile_total(f); offset = hashfile_total(f);
} }
@ -4587,9 +4590,10 @@ int cmd_pack_objects(int argc, const char **argv, const char *prefix)
fprintf_ln(stderr, fprintf_ln(stderr,
_("Total %"PRIu32" (delta %"PRIu32")," _("Total %"PRIu32" (delta %"PRIu32"),"
" reused %"PRIu32" (delta %"PRIu32")," " reused %"PRIu32" (delta %"PRIu32"),"
" pack-reused %"PRIu32), " pack-reused %"PRIu32" (from %"PRIuMAX")"),
written, written_delta, reused, reused_delta, written, written_delta, reused, reused_delta,
reuse_packfile_objects); reuse_packfile_objects,
(uintmax_t)reuse_packfiles_used_nr);
cleanup: cleanup:
clear_packing_data(&to_pack); clear_packing_data(&to_pack);