tree e4d1ecb2878d165bca2271aa9838e262e3816e77
parent f68848c9196d66bdeea5237ce838fbe24f86220c
author Stefan Sperling <stsp@apache.org> 1469729315 +0000
committer Stefan Sperling <stsp@apache.org> 1469729315 +0000

In the conflict resolver, start adding support for merging local edits in
the working copy into an incoming moved directory.

This code is still very rough. It lacks docstrings. Many things won't work yet.

But it already makes 'svn update' apply local file edits to an incoming move,
and makes an existing regression test XPASS, so I'm happy enough to put the
current state of things in to keep working on it incrementally.

* subversion/include/private/svn_wc_private.h
  (svn_wc__conflict_tree_merge_local_changes): Declare.

* subversion/libsvn_client/conflicts.c
  (resolve_incoming_move_dir_merge): Merge local changes with support from
   new functionality added to libsvn_wc in this commit.

* subversion/libsvn_wc/conflicts.c
  (svn_wc__conflict_tree_merge_local_changes): New. This function merges
   local changes (i.e. the delta between BASE and WORKING) from one
   directory in the working copy to another.

* subversion/libsvn_wc/wc_db.h
  (svn_wc__db_merge_local_changes): Declare.

* subversion/libsvn_wc/wc_db_update_move.c
  (tc_editor_merge_local_file_change): New TC editor receiver function.
  (get_working_info): New helper function. Similar to get_infp() but returns
   information about the WORKING tree.
  (walk_local_changes): Recursive walker which drives the TC editor per node.
  (merge_local_changes, svn_wc__db_merge_local_changes): New TC editor driver.
   Has not been tested yet beyond merging of simple file edits.

* subversion/tests/libsvn_client/conflicts-test.c
  (test_funcs): Remove XFAIL marker from test_merge_incoming_move_dir2.


git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1754441 13f79535-47bb-0310-9956-ffa450edef68
