Petr Baudis [off-list ref] writes:
$ git-cat-file commit bf570303153902ec3d85570ed24515bcf8948848 | grep tree
tree 41f10531f1799bbb31a1e0f7652363154ce96f45
$ git-read-tree 41f10531f1799bbb31a1e0f7652363154ce96f45
fatal: failed to unpack tree object 41f10531f1799bbb31a1e0f7652363154ce96f45
Kaboom. I think the issue might be that the reference dependency tree
building is broken and it should've pulled the other pack as well.
Last time I checked, git-http-pull did not utilize the pack
dependency information, which indeed is wrong. When it decides
to fetch a pack instead of an asked-for object, it should check
which commits the pack expects to have in your local repository
and add them to its list of things to slurp.
A good news is that "git clone" as a whole works fine.
prompt$ cd /var/tmp/
prompt$ rm -fr junk
prompt$ git clone http://www.kernel.org/pub/scm/git/git.git junk
defaulting to local storage area
prompt$ cd junk
prompt$ git-cat-file commit bf570303153902ec3d85570ed24515bcf8948848 |
grep tree
tree 41f10531f1799bbb31a1e0f7652363154ce96f45
prompt$ git-read-tree 41f10531f1799bbb31a1e0f7652363154ce96f45
prompt$ /bin/ls .git/objects/pack
pack-37cba29d3df65b160afabe769470f7857f98d729.idx
pack-37cba29d3df65b160afabe769470f7857f98d729.pack
pack-3c5133604508466855453f3e609428f4bbba9131.idx
pack-3c5133604508466855453f3e609428f4bbba9131.pack
prompt$