[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

svnmerge r14632 - bidirectional svnmerge-integrated property corruption

From: Steven Mueller <diffusor_at_ugcs.caltech.edu>
Date: 2005-05-19 02:59:51 CEST

Hello,

At the company I work for we are using subversion to revision our
website. We had been using a single branch for development and
production, but now we want to have one branch for development, and
one for the current production state of the website (in which we would
only fix bugs).

It probably doesn't make sense to make a new branch for each
production "push" since the older versions won't be used and won't
need to be maintained. So we thought it would make the most sense to
just keep our two running branches and merge bugfixes from production
into development, and when development is ready, merge it into
production.

svnmerge seems like the right tool for the job, so we've been using it
experimentally for the past few days. We set up a bidirectional link
using svnmerge init as described on the svnmerge website
http://www.dellroad.org/svnmerge/index, which seemed to work fine for
a while. However, recently our svnmerge-integrated properties on both
braches have become corrupted. Instead of only containing the line
tracking merges from the other branch, each also contains a line for
its own branch. It seems as though this has been merged from the
other branch in each case.

For example, in our development branch, we have:

~/dev/development$ svn propget svnmerge-integrated
/branches/development:1-455
/trunk:1-460

It seems that the offending /branches/development line got added
during a prior merge from /trunk. It seems that the first merge from
/trunk after doing svnmerge init is what does it. An excerpt from svn
log says:

Property changes on:
___________________________________________________________________
Name: svnmerge-integrated
   + /branches/development:1-455
   /trunk:1-460

As you can see, so far we have only used svnmerge to merge entire
repository changes. So, is this expected behavior from svnmerge?
And, is there any way out of it besides manually propediting
svnmerge-integrated in order to 1) remove the circular link and 2)
omit the revision number for which the other branch's propedit was
done? It seems that perhaps such functionality should be part of
svnmerge's init process.

Alternatively, is there another easier way to do what we want? We are
currently considering, for example, just deleting the current
production branch once development is ready for pushing to the
website, and then svn moving the development branch to the old
production branch name. Then we would branch again to a new
devbranch and set init the merge tracking again. Of course, we would
still have to manually propdel the new production branch's
svnmerge-integrated property prior to creating the new development
branch.

If anyone has any good advice on doing this type of process, I'd be
happy to hear about it. I'd also like to hear about successful uses
of svnmerge in the bidirectional case (disregarding, of course, the
issue of the lost distinction between changeset and its conflict
repairs, re:
http://subversion.tigris.org/servlets/ReadMsg?listName=dev&msgNo=99242).

Thank you,
Steve

-- 
Steven Mueller
diffusor@ugcs.caltech.edu
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Thu May 19 03:01:58 2005

This is an archived mail posted to the Subversion Users mailing list.