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

Re: Significant performance waste in git-svn and friends

From
Shawn O. Pearce <spearce@spearce.org>
Date
Sep 7, 2007, 04:55 UTC
Message-ID
<20070907045557.GY18160@spearce.org>
In-Reply-To
<20070906070407.GA19624@soma>
Eric Wong <normalperson@yhbt.net> wrote:
Show 7 quoted lines
> Making git-svn use fast-import would be very nice.  I've got a bunch
> of other git-svn things that I need to work on, but having git-svn
> converted to use fast-import would be nice.  Or allowing Git.pm
> to access more of the git internals...
> 
> However, how well/poorly would fast-import work for incremental
> fetches throughout the day?

It would work just fine. git-p4 uses fast-import and runs it in incremental mode all of the time.

What will happen is you will get a packfile per git-svn fetch, so if you fetch 5 times that day you will get 5 packfiles that day. But you could also get 5 packfiles from git-fetch if each of those fetches brought in 100 or more new objects. So it really is not that big of a deal.

At some point the number of packfiles gets out of control, but so does the number of loose objects. Repacking is the obvious fix in both cases.

-- 
Shawn.
Previous: Eric WongNext: Steven Grimm
Message 9 of 11 in “Significant performance waste in git-svn and friends”
  1. Mike HommeySep 5, 2007
  2. Junio C HamanoSep 5, 2007
  3. David KastrupSep 5, 2007
  4. Patrick DoyleSep 6, 2007
  5. Shawn O. PearceSep 6, 2007
  6. Shawn O. PearceSep 6, 2007
  7. Mike HommeySep 6, 2007
  8. Eric WongSep 6, 2007
  9. Shawn O. PearceSep 7, 2007
  10. Steven GrimmSep 7, 2007
  11. Mike HommeySep 7, 2007

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.