/[Apache-SVN]
ViewVC logotype

Revision 1752098


Jump to revision: Previous Next
Author: stsp
Date: Sun Jul 10 17:22:30 2016 UTC (7 years, 9 months ago)
Changed paths: 3
Log Message:
Add a new resolver option for merging an incoming directory move.

The implementation is very limited at present because it does not support
merging of local modifications from the deleted conflict victim to the incoming
move target. So this is a small step forward which makes things work for a
few cases (e.g. a merge which moves a directory that has no local mods in
the WC) but raises an error if used in unsupported situations (such as update
and switch, since they always involve local mods).
I hope this will be improved later.

* subversion/include/svn_client.h
  (svn_client_conflict_option_incoming_move_dir_merge): New option ID.
  (svn_client_conflict_option_get_moved_to_repos_relpath_candidates,
   svn_client_conflict_option_set_moved_to_repos_relpath,
   svn_client_conflict_option_get_moved_to_abspath_candidates
   svn_client_conflict_option_set_moved_to_abspath): Update docstrings.

* subversion/libsvn_client/conflicts.c
  (resolve_incoming_move_dir_merge): New resolver function. Currently performs
   a 2-URL merge of yca->victim into the move target (where yca is the youngest
   common ancestor of the conflict victim and the move target). This approach
   does not take local modifications into account, which needs to be fixed.
  (resolve_incoming_move_file_text_merge,
   svn_client_conflict_option_get_moved_to_repos_relpath_candidates,
   svn_client_conflict_option_set_moved_to_repos_relpath,
   svn_client_conflict_option_set_moved_to_repos_relpath,
   svn_client_conflict_option_set_moved_to_abspath): Update assertions.
  (configure_option_incoming_dir_merge): New helper function.
  (svn_client_conflict_tree_get_resolution_options): Configure the new option.
   
* subversion/svn/conflict-callbacks.c
  (builtin_resolver_options): Add the new option.
  (build_tree_conflict_options): Handle the new option in the same way as the
   existing svn_client_conflict_option_incoming_move_file_text_merge option.
  (handle_tree_conflict): Handle the new option.


Changed paths

Path Details
Directorysubversion/trunk/subversion/include/svn_client.h modified , text changed
Directorysubversion/trunk/subversion/libsvn_client/conflicts.c modified , text changed
Directorysubversion/trunk/subversion/svn/conflict-callbacks.c modified , text changed

infrastructure at apache.org
ViewVC Help
Powered by ViewVC 1.1.26