#555403 git-core: allow git-fetch to resume after connection failure

Package:
git
Source:
git
Description:
fast, scalable, distributed revision control system
Submitter:
Frédéric Brière
Date:
2010-05-15 21:21:24 UTC
Severity:
wishlist
#555403#5
Date:
2009-11-09 16:14:31 UTC
From:
To:
A few days ago, I tried updating my Linux kernel git clone, but the
connection kept stalling/dropping after a few 10,000s of objects.

I naively assumed that git-fetch would be smart enough not to download
the same objects twice, and that running it a couple of times would
eventually get the job done.  Imagine my disappointment upon discovering
that it was actually downloading the same pack over and over.

This is quite annoying, as there is no easy way to incrementally bring a
clone up to date (as opposed to incrementally deepening a shallow
clone).  I pity the poor kernel developer who's stuck on dialup and goes
away for a couple of weeks.

It'd be nice if git-fetch-pack (and git-receive-pack, I suppose) had an
option to dig deeper in the database and figure out exactly which
objects are needed, instead of the current cursory check on refs/.  It
would then be possible to extract the partial pack on failure, knowing
that these objects will not be downloaded again.