count-objects: Add total pack size to verbose output

Adds the total pack size (including indexes) the verbose count-objects
output, floored to the nearest kilobyte.

Updates documentation to match this addition.

Signed-off-by: Marcus Griep <marcus@griep.us>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Marcus Griep 2008-08-15 00:20:20 -04:00 коммит произвёл Junio C Hamano
Родитель 053fd0c1c3
Коммит f223824943
3 изменённых файлов: 7 добавлений и 3 удалений

Просмотреть файл

@ -21,8 +21,9 @@ OPTIONS
--verbose:: --verbose::
In addition to the number of loose objects and disk In addition to the number of loose objects and disk
space consumed, it reports the number of in-pack space consumed, it reports the number of in-pack
objects, number of packs, and number of objects that can be objects, number of packs, disk space consumed by those packs,
removed by running `git prune-packed`. and number of objects that can be removed by running
`git prune-packed`.
Author Author

Просмотреть файл

@ -104,6 +104,7 @@ int cmd_count_objects(int argc, const char **argv, const char *prefix)
if (verbose) { if (verbose) {
struct packed_git *p; struct packed_git *p;
unsigned long num_pack = 0; unsigned long num_pack = 0;
unsigned long size_pack = 0;
if (!packed_git) if (!packed_git)
prepare_packed_git(); prepare_packed_git();
for (p = packed_git; p; p = p->next) { for (p = packed_git; p; p = p->next) {
@ -112,12 +113,14 @@ int cmd_count_objects(int argc, const char **argv, const char *prefix)
if (open_pack_index(p)) if (open_pack_index(p))
continue; continue;
packed += p->num_objects; packed += p->num_objects;
size_pack += p->pack_size + p->index_size;
num_pack++; num_pack++;
} }
printf("count: %lu\n", loose); printf("count: %lu\n", loose);
printf("size: %lu\n", loose_size / 2); printf("size: %lu\n", loose_size / 2);
printf("in-pack: %lu\n", packed); printf("in-pack: %lu\n", packed);
printf("packs: %lu\n", num_pack); printf("packs: %lu\n", num_pack);
printf("size-pack: %lu\n", size_pack / 1024);
printf("prune-packable: %lu\n", packed_loose); printf("prune-packable: %lu\n", packed_loose);
printf("garbage: %lu\n", garbage); printf("garbage: %lu\n", garbage);
} }

Просмотреть файл

@ -137,7 +137,7 @@ test_expect_success "clone shallow object count" \
"test \"in-pack: 18\" = \"$(grep in-pack count.shallow)\"" "test \"in-pack: 18\" = \"$(grep in-pack count.shallow)\""
count_output () { count_output () {
sed -e '/^in-pack:/d' -e '/^packs:/d' -e '/: 0$/d' "$1" sed -e '/^in-pack:/d' -e '/^packs:/d' -e '/^size-pack:/d' -e '/: 0$/d' "$1"
} }
test_expect_success "clone shallow object count (part 2)" ' test_expect_success "clone shallow object count (part 2)" '