convert_svn ("release early" edition)
Daniel Holth
dholth at fastmail.fm
Mon Feb 12 04:47:58 UTC 2007
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
convert-repo patched to convert from Subversion.
http://dingoskidneys.com/cgi-bin/hgwebdir.cgi/outgoing (patches applied)
http://dingoskidneys.com/cgi-bin/hgwebdir.cgi/queue-convert-svn (just
the patches)
I used some GPL code from tailor and from bzr-svn to write this. Since
it uses the SVN API instead of the command line client, it is really
fast, but you will probably need to compile the latest Subversion
bindings from Subversion since the Python interface has only recently
become capable enough. I hear the ones in Ubuntu have the enhancements
(because the bzr developers did the work) but I have not tried them
myself.
I don't know when I'll have a chance to work on this again. I'd
appreciate any help if you also find this useful.
To test, I used svnsync to copy the first 10,000 (almost) revisions of
The Subversion Repository and converted that.
"convert-repo file:///subversionrepo/trunk trunk-hg"
Features:
- - Converts from any SVN URL to a hg repository
- - Much faster than tailor because it doesn't use /usr/bin/svn
- - Docstrings for convert-repo's source repository interface
Known Bugs:
- - No +x bit or symlinks
- - Move, rename info not propagated from SVN
- - Always requests whole file from SVN instead of diffs
- - Probably loses files if an entire directory is moved (since the svn
log doesn't list each file individually in this case)
- - Loses empty directories
- - Ugly first-draft code
- -- Daniel Holth
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.3 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFFz/F8Vh4W2pVfoMsRAge0AJsGgAD4psxpweweJ6Eq81CtQi2KJwCgnJ20
EwlCgdpubhUGUjJ2hlhhfXY=
=74uE
-----END PGP SIGNATURE-----
More information about the Mercurial-devel
mailing list