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

Re: A local shared clone is now much slower

From
Duy Nguyen <pclouds@gmail.com>
Date
Jul 8, 2013, 03:20 UTC
Message-ID
<CACsJy8BG0i-ncGTJ+9YkN=R1v6WOqF3MJkv_+572=eDjm-ug1A@mail.gmail.com>
In-Reply-To
<20130708130355.647fffb6e5b6a453bfa0fa6e@canb.auug.org.au>
On Mon, Jul 8, 2013 at 10:03 AM, Stephen Rothwell <sfr@canb.auug.org.au> wrote:
Show 7 quoted lines
> Hi guys,
>
> So commit 0433ad128c59 ("clone: run check_everything_connected") (which
> turned up with v1.8.3) added a large traversal to clone which (as the
> comment said) makes a clone much slower.  It is especially noticeable on
> "git clone -s -l -n" which I use every day and used to be almost
> instant.  Is there any thought to making it fast again, please?

It's done that way as a security measure against repo corruption. Although I wonder if we could do connectivity check in background instead (reports are stored in .git and picked up by git-status). The same mechanism could be used for "git gc --auto". If the repo turns out corrupted, the user may lose the last ~10 minutes of work, not really bad for the speed trade off. This mode is not the default, of course. The user has to be aware of the risk when choosing this route. -- Duy

Previous: Stephen RothwellNext: Stephen Rothwell
Message 2 of 10 in “A local shared clone is now much slower”
  1. Stephen RothwellJul 8, 2013
  2. Duy NguyenJul 8, 2013
  3. Stephen RothwellJul 8, 2013
  4. Jeff KingJul 8, 2013
  5. Duy NguyenJul 8, 2013
  6. Junio C HamanoJul 8, 2013
  7. Jeff KingJul 9, 2013
  8. Priming git clone with a local repo?Andreas Krey, Jul 11, 2013
  9. Junio C HamanoJul 11, 2013
  10. Junio C HamanoJul 8, 2013

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.