Make 'svn commit --changelist mychange' work.
At the moment, the changelist associations are removed from entries
during post-commit processing. In a followup change, we'll add a new
option to 'commit' which retains the changelist definition after a
commit.
Note: somehow this change is failing lock_tests.py. I'm
investigating, and will commit a fix soon.
* subversion/include/client.h
(svn_client_commit4): add a 'changelist' argument, rev function to v4.
(svn_client_commit3): deprecate.
* subversion/include/svn_wc.h
(svn_wc_process_committed3): update docstring to describe
changelist interaction.
* subversion/libsvn_wc/log.c, log.h
(SVN_WC__LOG_DELETE_CHANGELIST): new xml command for logfiles.
(log_do_delete_changelist): new utility function for log execution.
(start_handler): process the new xml command.
(svn_wc__loggy_delete_changelist): new function to tweak entry.
* subversion/libsvn_wc/adm_ops.c
(svn_wc_process_committed3): remove any changelist association when
doing post-commit processing on an entry.
* subversion/libsvn_client/client.h
(svn_client__harvest_committables): take a 'changelist_name' arg.
* subversion/libsvn_client/commit_util.c
(harvest_committables): take a 'changelist_name' arg, use it as a filter.
(svn_client_harvest_committables): take a 'changelist_name' arg,
pass it to static func.
(svn_client__get_copy_committables): update caller to pass NULL
changelist_name.
* subversion/libsvn_client/commit.c
(svn_client_commit4): take a 'changelist_name' arg and pass it on.
(svn_client_commit3): become a wrapper around svn_client_commit4().
* subversion/svn/commit-cmd.c
(svn_cl__commit): invoke svn_client_commit4(), not 3.
* subversion/svn/main.c
(svn_cl__cmd_table): allow 'svn commit' to take --changelist option.
* subversion/tests/cmdline/getopt_tests_data/svn_help_stdout, svn--help_stdout
Fix expected output of 'svn help' to show changelist command.
git-svn-id: https://svn.apache.org/repos/asf/subversion/branches/changelist-feature@860372 13f79535-47bb-0310-9956-ffa450edef68
12 files changed