You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by Apache subversion Wiki <co...@subversion.apache.org> on 2012/08/03 17:43:30 UTC

[Subversion Wiki] Update of "SymmetricMergeToDo" by JulianFoad

Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Subversion Wiki" for change notification.

The "SymmetricMergeToDo" page has been changed by JulianFoad:
http://wiki.apache.org/subversion/SymmetricMergeToDo?action=diff&rev1=1&rev2=2

Comment:
Remove done items & tweak the remaining item.

  == Testing ==
  See <subversion/tests/cmdline/merge_symmetric_tests.py>.
  
+  *
-  * Define tests that demonstrate how symmetric merge is better than sync and reintegrate.
-  * Define tests for all basic cases and all edge cases.
-  * Improve implementation of tests re. checking that the correct changes are merged and are only merged once.
  
  == Design ==
-  * Handling subtrees.  Decide whether to split the whole merge into revision ranges (the old way) or whether to split the whole merge first into subtrees and then calculate the best merge for each subtree (Stefan's [[http://svn.haxx.se/dev/archive-2012-04/0547.shtml|"two-phase merge" proposal]]).
+  *
  
  == Implementation ==
-  * Rewrite parts of the merge code in <subversion/libsvn_client/merge.c>.  In particular, do_symmetric_merge_locked() should call a single function that performs the next level of merging (that is, splitting up the overall requested merge so as to skip cherry-picks) without caring whether the base is on the source or the target branch.
+  * do_symmetric_merge_locked() should call a single function that performs the next level of merging (that is, splitting up the overall requested merge so as to skip cherry-picks) without caring whether the base is on the source or the target branch.  This is a non-trivial refactoring task.