Shawn Pearce [off-list ref] writes:
I wanted to explode a pack because I'm starting work on an Eclipse
plugin for GIT. I thought I'd try going down the road of letting
the plugin read the repository directly, and write loose objects
directly, but leave pack construction to the native C code. So I
tried to clone my local GIT repository to a new directory (thus
had no loose objects at all) and unpack it to get loose objects.
That didn't go so well. :-)
Before "git-repack -a" was invented, I used to do this by hand:
$ mkdir ./++preserve
$ mv .git/objects/pack/pack-*.pack ./++preserve
$ for p in ./++preserve/pack-*.pack
do git-unpack-objects <$p; done