Hi.
I attache new patch.
[[[
add 'svn:use-commit-times' property. If a file has 'svn:use-commit-times' property,
the timestamp of the file is modified to commit time.
* subversion/include/svn_props.h
(): add SVN_PROP_USE_COMMIT_TIMES and SVN_PROP_USE_COMMIT_TIMES_VALUE
(): add SVN_PROP_USE_COMMIT_TIMES to SVN_PROP_NODE_ALL_PROPS
* subversion/libsvn_subr/properties.c
(svn_prop_is_boolean) : svn_prop_is_boolean() checks SVN_PROP_USE_COMMIT_TIMES
* subversion/libsvn_wc/props.c
(svn_wc_canonicalize_svn_prop) : add comment
* subversion/libsvn_wc/update_editor.c
(): include assert.h
(struct file_baton): add use_commit_times and remove_use_commit_times
(change_file_prop): set fb->use_commit_times or fb->remove_use_commit_times
(close_file): change the timestamp of file when use_commit_times or remove_use_commit_times is set.
* subversion/libsvn_wc/workqueue.c
(run_file_install): set use_commit_times when svn:use-commit-times is set
* subversion/tests/cmdline/checkout_tests.py
(checkout_with_use_commit_times): add checkout test when svn:use-commit-times is set
(test_list): add checkout_with_use_commit_times to test_list
* subversion/tests/cmdline/export_tests.py
(): import time
(export_with_use_commit_times): add export test when svn:use-commit-times is set
(test_list): add export_with_use_commit_times to test_list
* subversion/tests/cmdline/prop_tests.py
(prop_value_conversions): add test setting and getting svn:use-commit-times
* subversion/tests/cmdline/update_tests.py
(update_with_use_commit_times): add update test when svn:use-commit-times is set
(test_list): add update_with_use_commit_times to test_list
]]]
> For consistency with other properties you need to implement this
> behaviour:
>
> /** Properties whose values are interpreted as booleans (such as
> * svn:executable, svn:needs_lock, and svn:special) always fold their
> * value to this.
> *
> * @since New in 1.5.
> */
> #define SVN_PROP_BOOLEAN_TRUE "*"
>
> This probably means changing svn_prop_is_boolean so that
>
> svn propset svn:use-commit-times foo some/file
>
> converts the value 'foo' to SVN_PROP_BOOLEAN_TRUE.
I implement this behavior.
> We also need regression tests for the standard testsuite, see
> subversion/tests/cmdline/prop_tests.py.
I implement the regression tests.
Received on 2013-07-28 11:12:47 CEST