I read the Git manual, FAQ, Git - SVN crash course, etc. and they all explain this and that, but nowhere can you find a simple instruction like:
SVN repository in: <
For complicated cases, reposurgeon by Eric S. Raymond is the tool of choice. In addition to SVN, it supports many other version control systems via the fast-export
format, and also CVS. The author reports successful conversions of ancient repositories such as Emacs and FreeBSD.
The tool apparently aims at near perfect conversion (such as converting SVN's svn:ignore
properties to .gitignore
files) even for difficult repository layouts with a long history. For many cases, other tools might be easier to use.
Before delving into the documentation of the reposurgeon
command line, be sure to read the excellent DVCS migration guide which goes over the conversion process step by step.