From: Junio C Hamano Date: Wed, 27 Dec 2006 09:04:03 +0000 (-0800) Subject: count-objects -v: show number of packs as well. X-Git-Tag: v1.5.0-rc1~187 X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=commitdiff_plain;h=ae72f685418b79bbd67e1017c5b1ac7d731c042e;p=git.git count-objects -v: show number of packs as well. Recent "git push" keeps transferred objects packed much more aggressively than before. Monitoring output from git-count-objects -v for number of loose objects is not enough to decide when to repack -- having too many small packs is also a good cue for repacking. Signed-off-by: Junio C Hamano --- diff --git a/Documentation/git-count-objects.txt b/Documentation/git-count-objects.txt index 198ce77a8..c59df6438 100644 --- a/Documentation/git-count-objects.txt +++ b/Documentation/git-count-objects.txt @@ -20,8 +20,8 @@ OPTIONS -v:: In addition to the number of loose objects and disk space consumed, it reports the number of in-pack - objects, and number of objects that can be removed by - running `git-prune-packed`. + objects, number of packs, and number of objects that can be + removed by running `git-prune-packed`. Author diff --git a/builtin-count-objects.c b/builtin-count-objects.c index 73c598242..f5b22bb80 100644 --- a/builtin-count-objects.c +++ b/builtin-count-objects.c @@ -105,16 +105,19 @@ int cmd_count_objects(int ac, const char **av, const char *prefix) } if (verbose) { struct packed_git *p; + unsigned long num_pack = 0; if (!packed_git) prepare_packed_git(); for (p = packed_git; p; p = p->next) { if (!p->pack_local) continue; packed += num_packed_objects(p); + num_pack++; } printf("count: %lu\n", loose); printf("size: %lu\n", loose_size / 2); printf("in-pack: %lu\n", packed); + printf("packs: %lu\n", num_pack); printf("prune-packable: %lu\n", packed_loose); printf("garbage: %lu\n", garbage); }