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

How do I determine if svn:mergeinfo is corrupt and how would I fix it.

From: Peter Kahn <citizenkahn_at_gmail.com>
Date: Mon, 10 May 2010 12:12:49 -0400

I suspect I have corrupt mergeinffo but I'm not sure. Does anyone know how
I'd make a determination and what resources are out there to help fix
problems?

Here’s the issue. My team recently moved to agile and uses feature branches
(story branches really) where different teams work on the same sources
concurrently. As the story achieves a high state of readiness the team
merges to trunk. The merges are taking days or weeks due to missing changes,
unexpected changes, and conflicts. We are talking about teams of 5-10 people
and the effort/churn seems way to high.

People use the this merge pattern

a) PULL - merge trunk-to-branch, resolve, test, commit

b) PUSH - merge branch-to-trunk, resolve, test, commit

c) Recreate branch (or usually create new story branch and drop old since
it's done)

By the end of this the branch and trunk should be in alignment.

*Problems we are seeing:*

   1. changes not reported during trunk-to-branch merge show up in
   subsequent branch-to-trunk
   2. conflicts on svn:mergefinfo properties during merge
   3. file missing, but local edit on new file added in branch and pushed to
   trunk
   4. incoming + local delete (file deleted on trunk and branch shows as
   conflict)

(1) Should not be happening. The pull from branch to trunk should put the
two in sync for all changes already on trunk. The changes in branch-to-trunk
merge are changes that happened on the trunk. So in the first merge they
should have propagated to branch but didn’t. This points to corruption in
mergeinfo data which would “hide” trunk changes.

(2) Should not be happening. SVN should be managing the changes in the merge
tracking. This also points to corruption in the mergeinfo data

(3) Should not be happening. This is a case of a new file added on branch.
It should show up as a new file added to trunk. This also points to
corruption in the merge info data.

(4) I believe this is a SVN bug and that we can’t fix this. Still if this
were our only problem I'd be happy

We are currently on svn 1.5.x server with clients using svn 1.6.x and
svn+ssh for connecting. We plan to go up to the latest and greatest SVN
since some fixes may impact our problems.

Still, it sure looks like our mergeinfo data is wrong.

   - Merges that don't report all changes
   - Conflicts in merge of mergeinfo properites

Any good places for me to start looking?

FYI, I also posted this to
Stackoverflow<http://stackoverflow.com/questions/2790471/how-do-i-determing-if-svnmergeinfo-is-corrupt-and-how-would-i-fix-it>,
but thus far "move to git" has been the only response and that's not really
an option for me at present.

-- 
Peter Kahn
citizenkahn_at_gmail.com
pkahnpie1_at_AIM
http://www.google.com/profiles/citizenkahn
Awareness - Intention - Action
Received on 2010-05-10 19:15:21 CEST

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.