[asterisk-dev] Automerge changes... finally worked out (long)
Kevin P. Fleming
kpfleming at digium.com
Mon Feb 6 14:00:46 MST 2006
I finally figured out the source of the problems with automerging of
developer branches from the trunk (this was not an issue with developer
branches based on branches/1.2).
The core issue that the 'svnmerge-integrated' property was being used
for two conflicting purposes: to track the branches/1.2 fixes that had
been forward-ported into the trunk and also to track the trunk changes
that had been merged into the developer branch. Obviously this cannot
work :-)
To solve the problem, the branches/1.2 forward-porting properties on
trunk are no longer using the standard svnmerge property names; they are
now called 'branch-1.2-merged' and 'branch-1.2-blocked', and there are
_no_ 'svnmerge-integrated' or 'svnmerge-blocked' properties on the
trunk. This means that forward-porting patches from branches/1.2
requires specifying the property names to svnmerge; see the
branching/merging page on asterisk.org for an example.
All new developers branches made from trunk should work with automerging
without any problem, but existing branches have an issue: the developer
branch contains a property 'svnmerge-integrated', but the trunk does
not, and running 'svnmerge merge' will try to update that property,
resulting in a conflict. To resolve this issue, for each branch that you
maintain, you will need to manually use svnmerge to bring it up-to-date
to at least revision 9163 (where the property was removed from the
trunk); from that point forward, automerge will be able to manage the
merges for you.
In the meantime, you will probably start to receive conflict notices
because your branches cannot be merged... but once we are past this
issue, automerging should work well and should no longer generate
'false' conflicts like it was doing before.
More information about the asterisk-dev
mailing list