I'm looking for a tool to migrate a couple of SVN repositories to Mercurial, with history, labels and so on.
I'm using TortoiseHg (Windows x32), so ConvertExtensions are discarded. There's some info on how to do this process on a Linux box (hgsvn), but I don't have a Linux machine available.
Can I use those Python scripts on Windows? If so, what do I need to do it? Or, what other tools can I use to do this process?
Basically, how can I convert an SVN project to Mercurial?
Nobody still does not mention hgsubversion (Extension Wiki), which can do it without almost any headache (excluding rare cases and specific tree).
Just add extension, enable it and
hg clone SVN_REPO
to local mercurial repoThis is in the TortoiseHg FAQ:
So it is apparently possible -- I'm using Linux so I haven't tried myself.
To convert an SVN Repo to an HG Repo AND copy it to a different server, you will need a few things.
convert
extension to Tortoise. Start the TortoiseHG Workbench from the Start menu. SelectFile -> Settings
. SelectExtensions
from the list. Check theconvert
checkbox and click OK.First the conversion…
\\server\folder
Do not map the SVN Repo folder itself. Map the folder just above it) Give the mapped drive a letter, likeY:\
CD /D Y:\
Y:\
prompt type:hg convert y:/RepoName
(use the name of the current Repo) Be careful of the forward and back slashes. The one in the command is a forward slash. Also, if the name has spaces, put the name in quotations. (i.e.Y:/"My Repo folder"
)Second the cloning…
File -> Clone Repository