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

Re: CVS -> SVN -> Git

From
Eric S. Raymond <esr@thyrsus.com>
Date
Jul 15, 2007, 13:36 UTC
Message-ID
<20070715133655.GA9302@thyrsus.com>
In-Reply-To
<469A0D54.8010303@alum.mit.edu>
Michael Haggerty <mhagger@alum.mit.edu>:
Show 9 quoted lines
> For example, cvs2svn internally deduces which files should be added to a
> given branch in a given commit.  But the information cannot be output to
> SVN in that form.  Instead, cvs2svn has to figure out which
> *directories* to copy to the branch directory, then which files to
> remove from the copied directory (because they shouldn't have been
> tagged), and which other files to copy from other sources.  This extra
> work, which is quite time- and space-consuming, is worse than pointless
> when converting to git, because git has to invert the process to figure
> out which individual files have to be tagged!

OK, that's a fair point. I might have known the showstopper would be somewhere near Subversion's tags-are-directories assumption. And this also neatly explains why I didn't see any problems or poor performance during my recent conversions; the projects I was lifting had no tags.

Show 6 quoted lines
> The interface between the two halves does not necessarily need to be a
> serialized data stream; it could just as well be via the Python API that
> is used internally by cvs2svn to access the reconstructed commits and
> supporting databases.  This would require the second half to be written
> in Python, but otherwise would be very flexible and would avoid the need
> to find a be-all serialized format.

Or...wait for it...the generator for the serialized format could be one of the back ends! Probably a good idea to have for debugging reasons, if nothing else.

-- 
		<a href="http://www.catb.org/~esr/">Eric S. Raymond</a>
Previous: Michael HaggertyNext: Martin Langhoff
Message 22 of 31 in “CVS -> SVN -> Git”
  1. Julian PhillipsJul 13, 2007
  2. Michael HaggertyJul 13, 2007
  3. Martin LanghoffJul 14, 2007
  4. Michael HaggertyJul 14, 2007
  5. Chris ShoemakerJul 14, 2007
  6. Michael HaggertyJul 14, 2007
  7. Steffen ProhaskaJul 14, 2007
  8. Shawn O. PearceJul 15, 2007
  9. Eric S. RaymondJul 14, 2007
  10. Junio C HamanoJul 14, 2007
  11. Oswald BuddenhagenJul 14, 2007
  12. Michael HaggertyJul 14, 2007
  13. Karl FogelJul 14, 2007
  14. David FrechJul 14, 2007
  15. Shawn O. PearceJul 15, 2007
  16. Michael HaggertyJul 15, 2007
  17. Martin LanghoffJul 16, 2007
  18. Julian PhillipsJul 16, 2007
  19. Karl FogelJul 16, 2007
  20. Eric S. RaymondJul 15, 2007
  21. Michael HaggertyJul 15, 2007
  22. Eric S. RaymondJul 15, 2007
  23. Martin LanghoffJul 16, 2007
  24. Markus SchiltknechtJul 19, 2007
  25. Karl FogelJul 20, 2007
  26. Simon 'corecode' SchubertJul 19, 2007
  27. Markus SchiltknechtJul 20, 2007
  28. Scott LambJul 15, 2007
  29. Simon 'corecode' SchubertJul 19, 2007
  30. Simon 'corecode' SchubertJul 19, 2007
  31. Julian PhillipsJul 20, 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.