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

Re: Importing Mozilla CVS into git

From
Martin Langhoff <martin.langhoff@gmail.com>
Date
Jun 6, 2006, 19:57 UTC
Message-ID
<46a038f90606061257v569aefackc4920a20f2970b0f@mail.gmail.com>
In-Reply-To
<9e4733910606060813r41037467u74235f7a9386c1e0@mail.gmail.com>
On 6/7/06, Jon Smirl <jonsmirl@gmail.com> wrote:
> Have you looked at the SVN CVS import tool? It imported Mozilla on the
> first try. If you download the source they have built about 40 test
> repositories with various errors. Those would make a good test suite
> for cvsps.  http://cvs2svn.tigris.org

Haven't yet, but I'll do. I'm currently quite busy at work, but I'm running these imports (Moz, Gentoo) and trying to address issues arising. Will look into SVN's tool it when I have a bit more time.

What I'll probably do is steal those test cases! ;-)
> I have been working on converting the svn tool to do git commands but
> my git knowledge is limited so it has been slow going. The last stage,
> pass 8, is very similar to what the git tools do. The svn commands
> just need to be swapped for git ones.

That would be interesting. And yet, I would have to evaluate how to transition gateways running git-cvsimport incrementally to a different importer.

Does it do incremental imports?
> If you get git-cvsimport working I'll use it instead. Will the cvsps
> process stay small enough to run on a 32b machine? The svn tools are

Currently not, but I do hope that the moz team has access to at least one machine with more than 32MB ;-)

With the current code, you will want a 3GB machine to run the git-cvsimport

git-cvsimport has a memory leak that I've been chasing for a while and I'll eventually fix, so it should fit in 32MB comfortably. cvsps is memory bound, and will probably take quite a bit of work to fix that. However, I suspect we can make it a lot more efficient.

> very RAM efficient since they use an external db. Can cvsps read from
> a local copy of the repository without using a CVS server?
> We are going to have to develop some kind of incremental mechanism for
> updating the new git tree. It can take up to two days to convert the
> repository, Mozilla development can't be shut down that long for a

You don't have to. Run an initial import, and then freeze development and run an incremental -- which will take an hour at the most. And then your mozilla.git repo is ready and up to date.

> transition. Git will also need to mirror the CVS repository (check-in
> still going to CVS) for a long time while we convince everyone on the
> merits of switching.
That's easy -- run git-cvsimport on a cronjob.
Show 5 quoted lines
> My imported svn version of Mozilla has a lot of performance problems.
> One of the directories has over 200,000 files in it slowing downing
> the filesystem. The repository went from 3GB CVS to 8GB svn, probably
> due to svn using 1000s of tiny files. I'll look around and see if svn
> has a pack feature like git.
At least they got a good importer ;-)
cheers,
martin
Previous: Jon SmirlNext: Keith Packard
Message 38 of 47 in “Importing Mozilla CVS into git”
  1. Jon SmirlJun 1, 2006
  2. Keith PackardJun 1, 2006
  3. Jon SmirlJun 2, 2006
  4. Keith PackardJun 2, 2006
  5. Jon SmirlJun 2, 2006
  6. Shawn PearceJun 2, 2006
  7. Keith PackardJun 2, 2006
  8. Jon SmirlJun 2, 2006
  9. Keith PackardJun 2, 2006
  10. Jon SmirlJun 2, 2006
  11. Shawn PearceJun 2, 2006
  12. Pavel RoskinJun 2, 2006
  13. Shawn PearceJun 2, 2006
  14. Johannes SchindelinJun 2, 2006
  15. Jon SmirlJun 2, 2006
  16. Igor BukanovJun 7, 2006
  17. Pavel RoskinJun 7, 2006
  18. Jon SmirlJun 7, 2006
  19. Jakub NarebskiJun 7, 2006
  20. Linus TorvaldsJun 7, 2006
  21. Martin LanghoffJun 7, 2006
  22. Martin LanghoffJun 2, 2006
  23. Robin Rosenberg (list subscriber)Jun 3, 2006
  24. Linus TorvaldsJun 3, 2006
  25. Bertrand JacquinJun 4, 2006
  26. Jakub NarebskiJun 4, 2006
  27. Linus TorvaldsJun 4, 2006
  28. Robin Rosenberg (list subscriber)Jun 4, 2006
  29. Linus TorvaldsJun 4, 2006
  30. Robin Rosenberg (list subscriber)Jun 4, 2006
  31. Robin Rosenberg (list subscriber)Jun 4, 2006
  32. Linus TorvaldsJun 4, 2006
  33. Yakov LernerJun 5, 2006
  34. Jon SmirlJun 3, 2006
  35. Jon SmirlJun 3, 2006
  36. Martin LanghoffJun 6, 2006
  37. Jon SmirlJun 6, 2006
  38. Martin LanghoffJun 6, 2006
  39. Keith PackardJun 7, 2006
  40. Jon SmirlJun 7, 2006
  41. Linus TorvaldsJun 1, 2006
  42. Jon SmirlJun 2, 2006
  43. Linus TorvaldsJun 2, 2006
  44. Junio C HamanoJun 2, 2006
  45. Linus TorvaldsJun 2, 2006
  46. Junio C HamanoJun 2, 2006
  47. Martin LanghoffJun 2, 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.