Subversion migration hints
Patrick Mézard
pmezard at gmail.com
Thu Jul 28 07:47:37 UTC 2011
Le 26/07/11 19:51, QbProg a écrit :
> Hello there,
> I'm planning a migration to hg from a subversion production repository.
> I've setup a local server using the windows service wrapper mode and
> it seem to work. Now I'm going to prepare the "big jump" :)
> I have some questions due to a non-standard subversion layout. I'm
> using hg convert on a local copy of the entire repository
>
> trunk/
> stable/3.0.x/
> stable/3.1.x/
> features/a/
> features/b/
> branches/b1
> branches/b2
> tags/
> tags/versions/1.0
> tags/versions/1.1
>
> I tryed to use a filemap but without luck.
> On the internet I've found some people who did a "branchmap" patch,
> but it was old (for 1.4) and doesn't exists anymore. Basically you
> could declare all the branches you wanted to import in a file.
>
> Anyway, I moved in subversion all the branches into the branches/ dir
> resulting in a more standard layout (I can rename these later)
>
> branches/stable/3.0.x/
> branches/stable/3.1.x/
> branches/features/a/
> branches/features/b/
> branches/b1
> branches/b2
>
> Anyway, the hg log only let me see the "stable" branch, the "features"
> one, etc...
> I can not see the subdirs of the branch. I would like to get
> stable/3.0.x stable/3.1.x branch and so on...
>
> Of course I can move all the sub dirs to the branches/ top level, but
> if I could avoid that it would be nice :)
Unfortunately, convert only looks for top level directories when discovering branches, mostly for performance reasons. I should really improve this but have not taken the time yet. I can help you hack in the extension to achieve what you want though.
> Finally, is there a way to see "merged + deleted" svn branches in the
> history? I only see merge commits and a long "default" history.
Deleted branches are not converted at all, that's why you do not see them. Again, it is expensive to scan the whole history looking for deleted items which may or may not be related to the converted tree. This could be fixed at the same time than the previous point using peg revisions.
Also, convert has no special support for svn merge, it converts merge revisions as regular ones but does not attempt to reflect the merge information in Mercurial (assuming this is even possible).
--
Patrick Mézard
More information about the Mercurial
mailing list