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

Re: git-cvsimport doesn't quite work, wrt branches

From
Keith Packard <keithp@keithp.com>
Date
Jun 13, 2006, 23:30 UTC
Message-ID
<1150241459.20536.98.camel@neko.keithp.com>
In-Reply-To
<46a038f90606131555m7b1fa744g9770140c87598b7b@mail.gmail.com>
On Wed, 2006-06-14 at 10:55 +1200, Martin Langhoff wrote:
> In terms of history parsing, parsecvs and cvs2svn are similar. I like
> cvs2svn "many passes" approach better, though the Python source is
> really messy. A good thing about cvs2svn is that it is a lot more
> conservative WRT memory use.
I will try to fix parsecvs so it doesn't take so much memory. Of course,
my goal was to import various X.org repositories which have horrible
issues, but aren't all that huge. And, for them, it works just fine.
 
> So far, I have been relying on parsecvs for initial imports, and for
> cvsps+git-cvsimport for incrementals on top of that initial import.
> But parsecvs falls over with large repos.

I'd like some help figuring out how to do incremental imports with parsecvs. As parsecvs already constructs the project history from the present into the past, it should be possible to "notice" when it hits existing bits in the repository and stop automatically. I think this will just take saving a bit of state in the git repository to mark where in CVS the tips of each branch come from.

> The main problem, however, is that it doesn't do incremental imports,
> so this would be a roundabout way of fixing parsecvs's
> memory-bound-ness. We still need cvsps :(

Parsecvs is currently O(nrev * nfile), and I'd like to make it O(nrev) instead.

-- 
keith.packard@intel.com
Previous: Martin LanghoffNext: Martin Langhoff
Message 6 of 10 in “git-cvsimport doesn't quite work, wrt branches”
  1. Jim MeyeringJun 13, 2006
  2. Jakub NarebskiJun 13, 2006
  3. Linus TorvaldsJun 13, 2006
  4. Keith PackardJun 13, 2006
  5. Martin LanghoffJun 13, 2006
  6. Keith PackardJun 13, 2006
  7. Martin LanghoffJun 14, 2006
  8. sfJun 14, 2006
  9. Yann DirsonJun 15, 2006
  10. Yann DirsonJun 13, 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.