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

Re: svn:mergeinfo property question...

From: BRM <bm_witness_at_yahoo.com>
Date: Fri, 10 Sep 2010 07:59:48 -0700 (PDT)

----- Original Message ----

> From: Bob Archer <Bob.Archer_at_amsi.com>
> frankly... 1.5.1 has many merging bugs in it. I would suggest you upgrade the
>client to the last 1.5 release or the current 1.6 release.

As much as I would like to be able to use a 1.6 client on the system - I can
only get 1.5.1 on Kubuntu 8.04 TLS, and that requires using back-ports to do so;
otherwise, I'm still limited to 1.4 on that system. So I still need to be able
to do the work on that system. Sadly, the backports only has 1.5.1 and nothing
newer. I might setup a Kubuntu 10.04 TLS VM do so some work with, but the 8.04
TLS has the environment I need to generate builds from for the time being, so
1.5.1 and 1.4 are sadly with me to stay for a while.
 
> That said... I'm not sure you can just reintegrate a branch that existed
>before merge tracking. If you do you have to make sure to do record only merges
>from trunk into branch. To reintegrate the branch 100% of the trunk code must
>have been merged to the branch... (assuming you are reintegrating to trunk.)
>
> Yes, it is possible during a merge that mergeinfo is removed. Google for
>mergeinfo elision. Druing a merge svn will ellide any merge info of child nodes
>where all the info will reside in a parent node.

Thanks. The article "Subversion 1.5 Mergeinfo - Understanding the Internals"[1]
had some really good information, and the section on elision provides some good
insight into what is going on. To Quote:

"In other words, removing the subtree's mergeinfo is safe to do since, if the
subtree's mergeinfo is equivalent to its nearest parent with explicit
mergeinfo, then the mergeinfo the subtree inherits from that parent is already
sufficient to describe the merges to the subtree. It's probably becoming clear
now that mergeinfo inheritance and elision are just two ways of looking at the
same thing: Inhertance is mergeinfo sliding "down" the tree from parent to
child, elision is mergeinfo sliding "up" the tree from child to parent."

So, the removal is simply b/c it matches trunk and has no other merges to worry
about if I understand it correctly, in which case - it's perfectly safe and sane
to do.
Please correct me if I'm wrong.

Ben

[1] http://www.collab.net/community/subversion/articles/merge-info.html
Received on 2010-09-10 17:00:29 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.