Add a stupid "count objects" script.
authorJunio C Hamano <junkio@cox.net>
Sun, 31 Jul 2005 00:31:47 +0000 (17:31 -0700)
committerJunio C Hamano <junkio@cox.net>
Sun, 31 Jul 2005 18:58:43 +0000 (11:58 -0700)
This counts the number of unpacked object files and disk space
consumed by them, to help you decide when it is a good time to
repack.

Signed-off-by: Junio C Hamano <junkio@cox.net>
Makefile
git-count-objects-script [new file with mode: 0755]

index db52a85..1b0ebb4 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -67,6 +67,8 @@ SCRIPTS=git git-apply-patch-script git-merge-one-file-script git-prune-script \
        git-ls-remote-script git-clone-dumb-http git-rename-script \
        git-request-pull-script git-bisect-script git-fetch-dumb-http
 
+SCRIPTS += git-count-objects-script
+
 PROG=   git-update-cache git-diff-files git-init-db git-write-tree \
        git-read-tree git-commit-tree git-cat-file git-fsck-cache \
        git-checkout-cache git-diff-tree git-rev-tree git-ls-files \
diff --git a/git-count-objects-script b/git-count-objects-script
new file mode 100755 (executable)
index 0000000..86432db
--- /dev/null
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+. git-sh-setup-script
+
+echo $(find "$GIT_DIR/objects"/?? -type f -print | wc -l) objects, \
+$({
+    echo 0
+    # "no-such" is to help Darwin folks by not using xargs -r.
+    find "$GIT_DIR/objects"/?? -type f -print 2>/dev/null |
+    xargs du -k "$GIT_DIR/objects/no-such" 2>/dev/null |
+    sed -e 's/[        ].*/ +/'
+    echo p
+} | dc) kilobytes