Resumable git clone?
- From
Josh Triplett <josh@joshtriplett.org>
- Date
- Mar 2, 2016, 01:30 UTC
- Message-ID
- <20160302012922.GA17114@jtriplet-mobl2.jf.intel.com>
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?
- Josh Triplett