summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile2
-rwxr-xr-xgit-count-objects-script13
2 files changed, 15 insertions, 0 deletions
diff --git a/Makefile b/Makefile
index db52a85..1b0ebb4 100644
--- 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
index 0000000..86432db
--- /dev/null
+++ b/git-count-objects-script
@@ -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