You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by "Oefelein, Martina" <Ma...@dionex.com> on 2009/08/27 14:00:21 UTC
RE: Is there a better way to convert svnmerge merge-tracking
information intos vn native format?
On Wed, Aug 26, 2009 at 8:32 PM, Mark Phippard
<ma...@gmail.com> wrote:
> > Is there a means to convert svnmerge.py merge-information into the
> > native svn 1.6 format so that the history of merges is properly
> > preserved? With svnmerge-migrate-history.py, it is not preserved.
> There is some unsupported code in svnsync to do this. You set some
> environment variables and then run svnsync to create a copy of your
> repository where the history is rewritten. Look for:
> SVNSYNC_UNSUPPORTED_MIGRATE_SVNMERGE in this file:
>
>
http://svn.collab.net/viewvc/svn/branches/1.6.x/subversion/svnsync/main.
c?revision=38788&view=markup
Great!
I see that this also elides existing svn:mergeinfo properties.
That's good, because we have a lot of spurious svn:mergeinfo properties
in our repository that we would like to get rid of since they are
rather annoying during merges.
> We did this on the svn.collab.net repository and mostly came to regret
> it as we discovered bugs in the way it did it over time.
Not so great :-(
> If you
> really wanted to pursue this, I think that using svnsync is probably
> the best approach. The existing code probably needs to be greatly
> enhanced as it was written before 1.5.x came out. I'd suggest looking
> at this history of the migration script to see what fixes have been
> made to it over the last 12-18 months and make sure they are reflected
> in the C code.
Umm, I don't have any experience with SVN internals; I didn't even try
to build it myself so far... Well, I can give it a try.
>
http://svn.collab.net/viewvc/svn/trunk/contrib/client-side/svnmerge/svnm
erge-migrate-history.py?view=log
>
> And I would probably test the results thoroughly.
One can easily compare the result against the result of
svnmerge-migrate-history.py - at least the HEAD should be identical.
Other than that, we can probably only pick some files/revs at random
and:
- check that SVN log -g displays the right thing
- check that SVN blame displays the right thing
- try to merge various revision ranges, that include merged and blocked
revisions, and check that it doesn't merge the merged and blocked
revisions, while everything else is properly merged.
- try to merge revisions that have been blocked and unblocked
- try to merge revisions that have been merged and reverted
Ciao
Martina
Dionex Softron GmbH
Rechtsform: Gesellschaft mit beschrankter Haftung
Sitz der Gesellschaft: Germering
Geschaftsfuhrer: Dr. Peter Jochum
Zustandiges Registergericht: Amtsgericht Munchen, HRB 717 65
Dionex Softron GmbH
Rechtsform: Gesellschaft mit beschrankter Haftung
Sitz der Gesellschaft: Germering
Geschaftsfuhrer: Dr. Peter Jochum
Zustandiges Registergericht: Amtsgericht Munchen, HRB 717 65
------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=462&dsMessageId=2387887