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

Re: Cloning speed comparison

From
Linus Torvalds <torvalds@osdl.org>
Date
Aug 13, 2005, 02:12 UTC
Message-ID
<Pine.LNX.4.58.0508121908180.3295@g5.osdl.org>
In-Reply-To
<20050813015402.GC20812@pasky.ji.cz>
On Sat, 13 Aug 2005, Petr Baudis wrote:
> 
>   Anyway, clone-pack is a clear winner for networks (but someone should
> re-check that, especially compared to rsync, wrt. server-side file
> caching); really cool fast, but not very practical for anonymous access.

git-daemon is for the anonymous access case, either started from inetd (or any other external "listen to port, exec service" thing), or with the built-in listening stuff.

It uses exactly the same protocol and logic as the regular ssh clone-pack thing, except it doesn't authenticate the remote end: it only checks that the local end is accepting anonymous pulls by checking whether there is a "git-daemon-export-ok" file in the git directory.

In my tests, the git daemon was noticeably faster than ssh, if only because the authentication actually tends to be a big part of the overhead in small pulls.

[ Hey. There's a deer outside my window eating our roses again. Cute ]
			Linus
Previous: Petr BaudisNext: Petr Baudis
Message 2 of 11 in “Cloning speed comparison”
  1. Petr BaudisAug 13, 2005
  2. Linus TorvaldsAug 13, 2005
  3. Petr BaudisAug 13, 2005
  4. Linus TorvaldsAug 13, 2005
  5. H. Peter AnvinAug 13, 2005
  6. Linus TorvaldsAug 13, 2005
  7. H. Peter AnvinAug 13, 2005
  8. H. Peter AnvinAug 13, 2005
  9. Daniel BarkalowAug 15, 2005
  10. Junio C HamanoAug 15, 2005
  11. Daniel BarkalowAug 15, 2005

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.