Re: Resumable git clone?
- From
Duy Nguyen <pclouds@gmail.com>
- Date
- Mar 2, 2016, 01:45 UTC
- Message-ID
- <CACsJy8B6_mRpw7ADyZ3H5vWq=JzEUX0yRHJM7pqQgCPQbvhOwA@mail.gmail.com>
- In-Reply-To
- <20160302012922.GA17114@jtriplet-mobl2.jf.intel.com>
On Wed, Mar 2, 2016 at 8:30 AM, Josh Triplett <josh@joshtriplett.org> wrote:
Show 17 quoted lines
> If you clone a repository, and the connection drops, the next attempt > will have to start from scratch. This can add significant time and > expense if you're on a low-bandwidth or metered connection trying to > clone something like Linux. > > Would it be possible to make git clone resumable after a partial clone? > (And, ideally, to make that the default?) > > In a discussion elsewhere, Al Viro suggested taking the partial pack > received so far, repairing any truncation, indexing the objects it > contains, and then re-running clone and not having to fetch those > objects. This may also require extending receive-pack's protocol for > determining objects the recipient already has, as the partial pack may > not have a consistent set of reachable objects. > > Before starting down the path of developing patches for this, does the > approach seem potentially reasonable?
This topic came up recently (thanks Sarah!) and Shawn proposed a different approach that (I think) is simpler and more effective for resume _clone_ case. I'm not sure if anybody is implementing it though.
[1] http://thread.gmane.org/gmane.comp.version-control.git/285921
-- Duy