Subject: Re: How to fetch missing pack

From: Peter Baumann <[email-masked]>
Date: Sun, 13 Apr 2008 11:41:31 +0200

On Sat, Apr 12, 2008 at 12:07:12PM +0000, Jörg Sommer wrote:
> Hi,
> 
> I'm missing a pack. My history of the git repository is broken:
> % git show --pretty=raw e0fda6ab|head -7
> commit e0fda6abd11c567b72f29ec0ee06c541404a9cb7
> tree 77a7e4a849bbec646d88ae863f80ea3f519e26bd
> parent 1ab58e8d6f728cdde0057f7ee88daab3a1c2d06f
> author Wincent Colaiuta <[email-masked]> 1196066088 +0100
> committer Junio C Hamano <[email-masked]> 1196109124 -0800
> 
>     Fix typo in draft 1.5.4 release notes
> % git log --pretty=oneline e0fda6ab | wc -l
> 1
> % git show e0fda6ab~1|cat
> fatal: ambiguous argument 'e0fda6ab~1': unknown revision or path not in the working tree.
> Use '--' to separate paths from revisions
> 
> Can I somehow tell git fetch to check the whole history for holes and
> fetch missing packs?
> 
> Bye, Jörg.

Try using git fsck --full to check you repo. If you are missing some
objects, you could just grab them from another valid repo which still has
them. (e.g. copy all packs/objects from the other repo into yours and then
do a git-repack -a -d -f)

-Peter