From: Alexander Miseler <alexander@miseler.de>
To: Nguyen Thai Ngoc Duy <pclouds@gmail.com>
Cc: Ilari Liusvaara <ilari.liusvaara@elisanet.fi>,
Jeff King <peff@peff.net>, Shawn Pearce <spearce@spearce.org>,
Ramkumar Ramachandra <artagnon@gmail.com>,
Jonathan Nieder <jrnieder@gmail.com>,
Jens Lehmann <Jens.Lehmann@web.de>,
Christian Couder <chriscool@tuxfamily.org>,
Thomas Rast <trast@student.ethz.ch>, git <git@vger.kernel.org>,
Pranav Ravichandran <prp.1111@gmail.com>
Subject: Re: Summer of Code project ideas due this Friday
Date: Fri, 11 Mar 2011 15:10:15 +0100 [thread overview]
Message-ID: <4D7A2D47.9010101@miseler.de> (raw)
In-Reply-To: <AANLkTin30fZURU-PxddSai5Qzfqjtwej=maGssyr2b7W@mail.gmail.com>
On 11.03.2011 14:48, Nguyen Thai Ngoc Duy wrote:
> On Fri, Mar 11, 2011 at 7:52 PM, Ilari Liusvaara
> <ilari.liusvaara@elisanet.fi> wrote:
>> On Fri, Mar 11, 2011 at 01:18:45PM +0100, Alexander Miseler wrote:
>>> Resumable clone
>>
>> This is very very hard. Not so much to implement but to design the way it
>> can be done without assuming things (like object sort orders) that aren't
>> stable.
>
> Yes it's hard. I have some experimental thing that nearly works [1],
> although whether it is an acceptable approach is to be seen. If
> anyone's interested, I'll post it some time
>
> A simpler way to restartable clone is to facilitate bundles (Nicolas'
> idea). Some glue is needed to teach git-fetch/git-daemon to use the
> bundles, and git-push to automatically create bundles periodically (or
> a new command that can be run from cron). I think this way fit in GSoC
> scope better.
>
> [1] The idea of my work above was mentioned elsewhere, history is cut
> down by path. Each file/dir's history a very long chain of deltas. We
> can stream deltas (in parallel if needed) over the wire, resuming
> where the chain stops last time.
>
> There are many problems. One is that a deep chain can make git run out
> of stack, so chains have to be broken down before storing (not done).
> Another one is that not many deltas can be reused, so it will consume
> more power than normal clone. But once you clone this way, the cloned
> repo have lots of delta suitable for another clone (but probably not
> for anything else).
This may all be aiming to short. IMHO the best solution would be some generic way for the client to specify exactly what
it wants to get and to get just that. This would lay the groundwork for:
- lazy clones
- sparse clones
- resumable cloning
- resumable fetching
and probably quite a few other nifty tricks.
I guess that would be far beyond the scope of a SoC project though.
next prev parent reply other threads:[~2011-03-11 14:10 UTC|newest]
Thread overview: 63+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-03-03 18:08 Google Summer of Code 2011 Shawn Pearce
2011-03-03 18:59 ` Jeff King
2011-03-03 19:04 ` Shawn Pearce
2011-03-03 20:33 ` Jeff King
2011-03-03 21:25 ` Jakub Narebski
2011-03-09 16:38 ` Jeff King
2011-03-09 16:39 ` Jeff King
2011-03-09 16:47 ` Shawn Pearce
2011-03-09 17:49 ` Jeff King
2011-03-09 17:52 ` Shawn Pearce
2011-03-09 21:58 ` Summer of Code project ideas due this Friday Jeff King
2011-03-10 0:10 ` Jonathan Nieder
2011-03-10 16:30 ` Jeff King
2011-03-10 17:31 ` Shawn Pearce
2011-03-10 21:43 ` Alexander Miseler
2011-03-10 17:15 ` Thomas Rast
2011-03-10 18:17 ` Santi Béjar
2011-03-10 18:46 ` Jeff King
2011-03-10 19:21 ` Junio C Hamano
2011-03-10 19:28 ` Jeff King
2011-03-10 20:54 ` Junio C Hamano
2011-03-10 21:42 ` Jeff King
2011-03-10 22:58 ` Junio C Hamano
2011-03-10 23:09 ` Jeff King
2011-03-11 13:31 ` Thomas Rast
2011-03-10 17:39 ` Jakub Narebski
2011-03-11 13:28 ` Thomas Rast
2011-03-12 0:20 ` History surgery with fast-import (Re: Summer of Code project ideas due this Friday) Jonathan Nieder
2011-03-13 17:08 ` Summer of Code project ideas due this Friday Ramkumar Ramachandra
2011-03-10 0:19 ` Nguyen Thai Ngoc Duy
2011-03-10 16:31 ` Jeff King
2011-03-10 21:40 ` Alexander Miseler
2011-03-10 22:18 ` Jeff King
2011-03-11 14:17 ` Alexander Miseler
2011-03-12 19:47 ` Alexander Miseler
2011-03-11 12:18 ` Alexander Miseler
2011-03-11 12:52 ` Ilari Liusvaara
2011-03-11 13:48 ` Nguyen Thai Ngoc Duy
2011-03-11 14:10 ` Alexander Miseler [this message]
2011-03-11 14:27 ` Nguyen Thai Ngoc Duy
2011-03-11 22:42 ` Sam Vilain
2011-03-12 21:41 ` Alexander Miseler
2011-03-11 12:43 ` Ævar Arnfjörð Bjarmason
2011-03-11 14:24 ` code.sculptor
2011-03-17 23:40 ` Summer of Code project ideas Jakub Narebski
2011-03-22 20:31 ` Heiko Voigt
2011-03-22 22:55 ` J.H.
2011-03-25 1:11 ` Pat Thoyts
2011-03-25 13:02 ` Jakub Narebski
2011-03-03 21:04 ` Google Summer of Code 2011 Ramkumar Ramachandra
2011-03-03 22:08 ` Jonathan Nieder
2011-03-07 12:15 ` Sverre Rabbelier
2011-03-08 12:33 ` Ramkumar Ramachandra
2011-03-08 12:49 ` Sverre Rabbelier
2011-03-03 22:38 ` Jens Lehmann
2011-03-05 4:05 ` Christian Couder
2011-03-06 19:24 ` Sam Vilain
2011-03-07 19:40 ` Heiko Voigt
2011-03-07 20:50 ` Fredrik Gustafsson
2011-03-09 21:52 ` Heiko Voigt
2011-03-09 23:16 ` Fredrik Gustafsson
2011-03-10 22:46 ` Heiko Voigt
2011-03-09 15:18 ` Thomas Rast
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4D7A2D47.9010101@miseler.de \
--to=alexander@miseler.de \
--cc=Jens.Lehmann@web.de \
--cc=artagnon@gmail.com \
--cc=chriscool@tuxfamily.org \
--cc=git@vger.kernel.org \
--cc=ilari.liusvaara@elisanet.fi \
--cc=jrnieder@gmail.com \
--cc=pclouds@gmail.com \
--cc=peff@peff.net \
--cc=prp.1111@gmail.com \
--cc=spearce@spearce.org \
--cc=trast@student.ethz.ch \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).