Re: Resumable git clone?
- From
Josh Triplett <josh@joshtriplett.org>
- Date
- Mar 2, 2016, 16:49 UTC
- Message-ID
- <20160302164906.GB13732@x>
- In-Reply-To
- <xmqqziuh46hb.fsf@gitster.mtv.corp.google.com>
On Wed, Mar 02, 2016 at 12:41:20AM -0800, Junio C Hamano wrote:
Show 19 quoted lines
> Josh Triplett <josh@joshtriplett.org> writes: > > 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. > > For this particular issue, your friendly k.org administrator already > has a solution. Torvalds/linux.git is made into a bundle weekly > with > > $ git bundle create clone.bundle --all > > and the result placed on k.org CDN. So low-bandwidth cloners can > grab it over resumable http, clone from the bundle, and then fill > the most recent part by fetching from k.org already. > > The tooling to allow this kind of "bundle" (and possibly other forms > of "CDN offload" material) transparently used by "git clone" was the > proposal by Shawn Pearce mentioned elsewhere in this thread.
That does help in the case of cloning torvalds/linux.git from kernel.org, and I'd love to see it used transparently.
However, even with that, I still also see value in a resumable git clone (or git pull) for many other repositories elsewhere, with a somewhat lower pull-to-push ratio than kernel.org. Supporting resumption based on objects, without the repository needing to generate and keep around a bundle, seems preferable for such repositories.