[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

[PATCH] Issue #1776 - Add '--parents' switch to 'svn mkdir', 'copy' and 'move' (v3)

From: S.Ramaswamy <srsy70_at_gmail.com>
Date: 2005-07-14 12:12:46 CEST

Previous thread:

http://svn.haxx.se/dev/archive-2005-03/0550.shtml (v2)

wc_to_repos_copy() is not done yet - Haven't figured out how
to do it cleanly. Any suggestions ?

Thanks
Ramaswamy

Changelog:

Fix issue #1776. Add "--parents" option to allows creation of parent
directories to 'svn mkdir', 'svn copy', and 'svn move'

* subversion/clients/cmdline/cl.h
    (svn_cl__longopt_t, svn_cl__opt_state_t): Add parents switch to
    option processing structs.

* subversion/clients/cmdline/copy-cmd.c
    (svn_cl__copy): Call new function svn_client_copy2().

* subversion/clients/cmdline/main.c
    (svn_cl__options): Add '--parents' option.
    (main): Add support for '--parents' option.
    (svn_cl__cmd_table): Add --parents' option.

* subversion/clients/cmdline/mkdir-cmd.c
    (svn_cl__mkdir): Call new function svn_client_mkdir2().

* subversion/clients/cmdline/move-cmd.c
    (svn_cl_move): Call new function svn_client_move3().

* subversion/include/svn_client.h
    (svn_client_mkdir2): New function prototype.
    (svn_client_mkdir): Deprecate.
    (svn_client_move3): New function prototype.
    (svn_client_move2): Deprecate.
    (svn_client_copy2): New function prototype.
    (svn_client_copy): Deprecate.

* subversion/libsvn_client/add.c
    Include svn_sorts.h
    (mkdir_urls): Added new parameter 'parents' and support
    for creating parent directories directly in the repository.
    (svn_client_mkdir): Re-implemented in terms of new function
    (svn_client_mkdir2): Re-implemented in terms of new function
    svn_client__mksubdir(), and mkdir_urls() with parents parameter.
    (svn_client__mksubdir): New function.
    (svn_client_mkdir2): New function.
   
* subversion/libsvn_client/client.h
    (svn_client__mksubdir): New function prototype.
    (svn_client__url_new_paths): New function prototype.
   
* subversion/libsvn_client/commit.c
    (svn_client__url_new_paths): New function.
    (svn_client_import2): Call new function
    svn_client__url_new_paths().
    
* subversion/libsvn_client/copy.c
    (repos_to_repos_copy, repos_to_wc_copy, wc_to_wc_copy,
    setup_copy): Added new parameter 'parents'.
    (repos_to_repos_p_copy): New function.
    (svn_client_copy2, svn_client_move3): Call setup_copy() with new
    parameter 'parents'.
    (svn_client_move2, svn_client_move): Call setup_copy() with
    'parents' set to FALSE.
   
* subversion/tests/clients/cmdline/basic_tests.py
    (basic_mkdir_url_p, basic_mkdir_missing_parent,
     basic_mkdir_missing_parent_p, basic_mkdir_wcpath): New tests.
    (test_list): Run it.
   
* subversion/tests/clients/cmdline/copy_tests.py
    (copy_url_mkdir_parents, move_url_mkdir_parents,
     copy_wc_to_wc_parents, move_wc_to_wc_parents,
     copy_url_to_wc_parents): New tests.
    (test_list): Run it.

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org

Received on Thu Jul 14 12:14:50 2005

This is an archived mail posted to the Subversion Dev mailing list.