Sometimes, svnmerge.py will cause spurious conflicts in the merge
memory property. The last step of the action_merge function sets this
property explicitly to the new correct value anyway, so any conflicts
that occurred during the merge are irrelevant.
The patch for this is attached, and all tests still pass. Here is the
log message:
[[[
Prevent spurious conflicts on the merge property when the
source branch contains merge property information for other
branches. Previously, this caused a property conflict (when
-b was not used) because the initial value on the source branch
did not match the initial value on the target branch.
* contrib/client-side/svnmerge.py:
(action_merge): Before each merge, set the merge property
explicitly to the initial value of the source branch in
all cases instead of only when bidirectional merging is
enabled.
Patch by: Raman Gupta <[EMAIL PROTECTED]>
Review by: ?
]]]
Cheers,
Raman
Index: svnmerge.py
===================================================================
--- svnmerge.py (revision 21792)
+++ svnmerge.py (working copy)
@@ -1153,14 +1153,12 @@
old_merge_props = branch_props
merge_metadata = logs[opts["head-url"]].merge_metadata()
for start,end in minimal_merge_intervals(revs, phantom_revs):
+ # Set merge props
+ new_merge_props = merge_metadata.get(start-1)
+ if new_merge_props != old_merge_props:
+ set_merge_props(branch_dir, new_merge_props)
+ old_merge_props = new_merge_props
- # Set merge props appropriately if bidirectional support is enabled
- if opts["bidirectional"]:
- new_merge_props = merge_metadata.get(start-1)
- if new_merge_props != old_merge_props:
- set_merge_props(branch_dir, new_merge_props)
- old_merge_props = new_merge_props
-
if not record_only:
# Do the merge
svn_command("merge -r %d:%d %s %s" % \
_______________________________________________
Svnmerge mailing list
[email protected]
http://www.orcaware.com/mailman/listinfo/svnmerge