Monday, December 28, 2009

Convert svn repository to hg

hgsvn is a third-party tool dedicated Subversion interoperability. Sources can be found at http://pypi.python.org/pypi/hgsvn/.

Let's say you want to contribute to CPython. You first import a recent chunk of the CPython history (starting from rev 60800 - so that it doesn't take too much time):

 
$ hgimportsvn -r 60800 http://svn.python.org/projects/python/trunk
$ cd trunk
$ hgpullsvn
$ cd ..

You also can do the code below if you want to get full log history from svn:
 
$ hgimportsvn http://svn.python.org/projects/python/trunk

You then have a folder named "trunk" containing both an hg repo (with each changeset mirroring an SVN revision) and an SVN checkout. It has an unique named branch "trunk".

0 Comments: