Support merge --record-only alternative that applies only svn:mergeinfo diffs. * subversion/include/svn_client.h (svn_client_merge4): New. (svn_client_merge3): Deprecated. (svn_client_merge_peg4): New. (svn_client_merge_peg3): Deprected. * subversion/include/svn_wc.h (svn_wc_conflict_resolver_func2_t): Update comment to reflect revved API. * subversion/libsvn_client/deprecated.c (svn_client_merge3, svn_client_merge_peg3): Moved here from merge.c. * subversion/libsvn_client/merge.c (merge_cmd_baton_t): Add new member mergeinfo_diff. (merge_props_changed): Apply only svn:mergeinfo props changes during --mergeinfo-diff merges. (merge_file_changed): Don't apply text changes during --mergeinfo-diff merges. (merge_file_added, merge_file_deleted, merge_dir_added, merge_dir_deleted): Dont add or delete paths during --mergeinfo-diff merges. (notification_receiver): Don't show add/delete notifications during --mergeinfo-diff merges. (do_directory_merge): Update comment to reflect revved API. (do_merge): Add arg to indicate a --mergeinfo-diff merge and initialize the corresponding member in the merge command baton. (merge_cousins_and_supplement_mergeinfo): Update calls to do_merge(). (svn_client_merge3, svn_client_merge_peg3): Moved to deprecated.c. (svn_client_merge4, svn_client_merge_peg4): New...and while we are revving change the pool arg to a scratch_pool. * subversion/svn/cl.h (svn_cl__opt_state_t): New mergeinfo_diff member. * subversion/svn/main.c (svn_cl__longopt_t): New opt_mergeinfo_diff enum. (svn_cl__options): Add --mergeinfo-diff long option. (svn_cl__cmd_table): Add --mergeinfo-diff option to merge subcommand. (main): Parse --mergeinfo-diff option. * subversion/svn/merge-cmd.c (svn_cl__merge): Replace calls to svn_client_merge_peg3 and svn_client_merge3 with svn_client_merge_peg4 and svn_client_merge4.