git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: GSoC resumable clone

From
Nguyen Thai Ngoc Duy <pclouds@gmail.com>
Date
Mar 11, 2011, 15:42 UTC
Message-ID
<AANLkTinDBm-Q3MA62r_TRqt-qxmPuDKPACr4bEPnJ6vz@mail.gmail.com>
In-Reply-To
<AANLkTinrgqLhZK=fQ_+gUanT-zy9Mcbw-y3o7nYV9A-m@mail.gmail.com>
On Fri, Mar 11, 2011 at 10:17 PM, Shawn Pearce <spearce@spearce.org> wrote:
Show 6 quoted lines
> I think the cached bundle idea is horrifically stupid in the face of
> the subsequent cached pack idea. JGit already implements cached packs,
> and it works very well. The feature just needs to be back-ported to
> builtin/pack-objects.c, along with some minor edits to my RFC patch to
> git-repack.sh to be able to construct the cached pack.
> ...

I wonder why I missed it. Probably to recent and has not be carved to my mind yet.

> Junio and I would like see narrow checkout code re-implemented to
> support obtaining only a subset of the paths from the remote.

I'm close to finishing negative pathspecs (for extending narrow clones). I'll get there.

Show 6 quoted lines
> Once that is implemented, a client on a really bad network connection
> could do a resumable clone by grabbing a shallow clone of depth 1
> along no paths, partition the root tree up, then extend its paths
> grabbing subdirectories until the root commit is fully expanded. Then
> it can walk back increasing its depth until it runs into the cached
> pack... where it can then do byte range requests.

Yes. But then it'll cost server's processing power more. Partitioning by path reduces chances of reusing deltas a lot.

-- 
Duy
Previous: Jeff King
Message 7 of 7 in “Re: GSoC resumable clone”
  1. Shawn PearceMar 11, 2011
  2. Jeff KingMar 11, 2011
  3. Shawn PearceMar 11, 2011
  4. Jeff KingMar 11, 2011
  5. Ilari LiusvaaraMar 11, 2011
  6. Jeff KingMar 11, 2011
  7. Nguyen Thai Ngoc DuyMar 11, 2011

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.