|Question on tree conflict resolution [message #904836]
||Wed, 29 August 2012 04:45
| Mauro Molinari
Registered: July 2009
I have a question on how mergeinfo property is handled in a specific case.
I created a development branch from the trunk. Both this new branch and
the trunk evolved. Then, I merged the branch so that it received all the
new changes from the trunk before the reintegration.
During this merge to align the branch to the trunk, I got some
conflicts. Some of them were tree conflicts caused by the fact that some
files were added in both the branch and the trunk.
The first problem is this: since the contents of those files in both the
branch and the trunk are identical, I would expect Subversive to be
smart enough to detect this thing and not to complain about a useless
conflict. However, maybe this is a limitation of Subversion (or of
SVNKit?), rather than of Subversive, however Subversive may help the
user to see that this conflict is actually a non-problem...
Anyway, the real question is the following. In order to minimize the
conflicts I will get when I will reintegrate the branch into the trunk,
I decided to resolve those tree conflicts telling Subversive to "accept
the incoming change", that is to replace the file in the branch with the
one coming from the trunk. However, after I resolved all the conflicts
and committed the changes, I noticed that Subversive has added the
svn:mergeinfo property to ALL the files (yes, even for files, not only
directories!) for which I resolved the tree conflict in this way. The
contents of the mergeinfo property on those files varies from file to
file: it's not clear to me if it's value is coming from the project root
folder on the trunk, however it always contains also a merged revision
number from the same branch...
In other words, if the branch is B and I'm aligning it to the trunk T,
if I have a tree conflict on a file that was added both in B and T and I
resolve it by saying "accept the incoming change" (so, replace the file
in B with that in T), I get a file in B with the following svn:mergeinfo
where x is a revision number (I don't know where it's coming from).
That is, I have a file in B with a mergeinfo property that says that it
was merged from B itself!! Moreover, if I look at the changeset x, I
can't find any reference to that file, nor that file exists in B at x
Is this normal?
I wouldn't have expected to see any svn:mergeinfo property added for
those files at all...
Thanks in advance,