Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
A script to show all the objects in a git repository
set -e
cd "$(git rev-parse --show-cdup)"
# Find all the objects that are in packs:
for p in .git/objects/pack/pack-*.idx
git show-index < $p | cut -f 2 -d ' '
# And now find all loose objects:
find .git/objects/ | egrep '[0-9a-f]{38}$' | \
sed -r 's,^.*([0-9a-f][0-9a-f])/([0-9a-f]{38}),\1\2,'

This comment has been minimized.

Copy link

commented Jan 21, 2013

There's a problem with this script if there are no packfiles in the repository where you use it. I've fixed it in my fork.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.