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

Re: git-fetch per-repository speed issues

From
Junio C Hamano <junkio@cox.net>
Date
Jul 4, 2006, 03:30 UTC
Message-ID
<7vsllinj1m.fsf@assigned-by-dhcp.cox.net>
In-Reply-To
<Pine.LNX.4.64.0607032008590.12404@g5.osdl.org>
Linus Torvalds <torvalds@osdl.org> writes:
Show 12 quoted lines
> Ok, a "git fetch" really shouldn't take any longer than a single 
> connection. However, the fact that you have 32 heads, and it takes pretty 
> close to _exactly_ 32 times 0.410 seconds (32*0.410s = 13.1s) makes me 
> suspect that "git fetch" is just broken and fetches one branch at a time. 
>
> Which would be just stupid.
>
> But look as I might, I see only that one "git-fetch-pack" in git-fetch.sh 
> that should trigger. Once. Not 32 times. But your timings sure sound like 
> it's doing a _lot_ more than it should.
>
> Junio, any ideas?

Isn't that because the repository have 32 subprojects, totally unrelated content-wise? If you have real stuff to pull from there your pack generation needs to do 32 time as much work as you would for a single head in that case.

If you are discussing "peek-remote runs, find out the 32 heads are all up to date and no pack is generated" case, then you are right. There is one single fetch-pack to grab the specified heads, and after that, an optional single ls-remote and fetch-pack runs only once to follow all new tags.

Previous: Linus TorvaldsNext: Linus Torvalds
Message 18 of 30 in “git-fetch per-repository speed issues”
  1. Keith PackardJul 3, 2006
  2. Linus TorvaldsJul 3, 2006
  3. Jeff KingJul 4, 2006
  4. Ryan AndersonJul 4, 2006
  5. Jeff KingJul 4, 2006
  6. Ryan AndersonJul 4, 2006
  7. Linus TorvaldsJul 4, 2006
  8. Jeff KingJul 5, 2006
  9. Linus TorvaldsJul 5, 2006
  10. Jakub NarebskiJul 4, 2006
  11. Jakub NarebskiJul 4, 2006
  12. Thomas GlanzmannJul 4, 2006
  13. Junio C HamanoJul 4, 2006
  14. Linus TorvaldsJul 4, 2006
  15. Junio C HamanoJul 4, 2006
  16. David WoodhouseJul 6, 2006
  17. Linus TorvaldsJul 4, 2006
  18. Junio C HamanoJul 4, 2006
  19. Linus TorvaldsJul 4, 2006
  20. Keith PackardJul 4, 2006
  21. Andreas EricssonJul 4, 2006
  22. Matthias KestenholzJul 4, 2006
  23. Andreas EricssonJul 4, 2006
  24. Keith PackardJul 4, 2006
  25. Linus TorvaldsJul 4, 2006
  26. Keith PackardJul 4, 2006
  27. Linus TorvaldsJul 4, 2006
  28. Junio C HamanoJul 4, 2006
  29. Keith PackardJul 4, 2006
  30. Linus TorvaldsJul 4, 2006

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.