Author: julianfoad
Date: Fri Jan 12 16:32:25 2018
New Revision: 1821003

URL: http://svn.apache.org/viewvc?rev=1821003&view=rev
Log:
On the 'shelve-checkpoint' branch: a more regular CLI command set.

Modified:
    subversion/branches/shelve-checkpoint/subversion/svn/cl.h
    subversion/branches/shelve-checkpoint/subversion/svn/shelve-cmd.c
    subversion/branches/shelve-checkpoint/subversion/svn/svn.c
    
subversion/branches/shelve-checkpoint/subversion/tests/cmdline/shelve_tests.py
    subversion/branches/shelve-checkpoint/tools/client-side/bash_completion

Modified: subversion/branches/shelve-checkpoint/subversion/svn/cl.h
URL: 
http://svn.apache.org/viewvc/subversion/branches/shelve-checkpoint/subversion/svn/cl.h?rev=1821003&r1=1821002&r2=1821003&view=diff
==============================================================================
--- subversion/branches/shelve-checkpoint/subversion/svn/cl.h (original)
+++ subversion/branches/shelve-checkpoint/subversion/svn/cl.h Fri Jan 12 
16:32:25 2018
@@ -279,7 +279,6 @@ svn_opt_subcommand_t
   svn_cl__cat,
   svn_cl__changelist,
   svn_cl__checkout,
-  svn_cl__checkpoint,
   svn_cl__cleanup,
   svn_cl__commit,
   svn_cl__copy,
@@ -309,10 +308,11 @@ svn_opt_subcommand_t
   svn_cl__shelf,
   svn_cl__shelf_diff,
   svn_cl__shelf_drop,
+  svn_cl__shelf_list,
   svn_cl__shelf_log,
+  svn_cl__shelf_save,
   svn_cl__shelve,
   svn_cl__unshelve,
-  svn_cl__shelves,
   svn_cl__status,
   svn_cl__switch,
   svn_cl__unlock,

Modified: subversion/branches/shelve-checkpoint/subversion/svn/shelve-cmd.c
URL: 
http://svn.apache.org/viewvc/subversion/branches/shelve-checkpoint/subversion/svn/shelve-cmd.c?rev=1821003&r1=1821002&r2=1821003&view=diff
==============================================================================
--- subversion/branches/shelve-checkpoint/subversion/svn/shelve-cmd.c (original)
+++ subversion/branches/shelve-checkpoint/subversion/svn/shelve-cmd.c Fri Jan 
12 16:32:25 2018
@@ -604,73 +604,6 @@ shelf_drop(const char *name,
   return SVN_NO_ERROR;
 }
 
-/* This implements the `svn_opt_subcommand_t' interface. */
-svn_error_t *
-svn_cl__shelf(apr_getopt_t *os,
-              void *baton,
-              apr_pool_t *pool)
-{
-  svn_cl__opt_state_t *opt_state = ((svn_cl__cmd_baton_t *) baton)->opt_state;
-  svn_client_ctx_t *ctx = ((svn_cl__cmd_baton_t *) baton)->ctx;
-  const char *local_abspath;
-  const char *name;
-
-  SVN_ERR(svn_dirent_get_absolute(&local_abspath, "", pool));
-
-  if (opt_state->list)
-    {
-      if (os->ind < os->argc)
-        return svn_error_create(SVN_ERR_CL_ARG_PARSING_ERROR, 0, NULL);
-
-      SVN_ERR(shelves_list(local_abspath,
-                           ! opt_state->quiet /*with_logmsg*/,
-                           ! opt_state->quiet /*with_diffstat*/,
-                           ctx, pool));
-      return SVN_NO_ERROR;
-    }
-
-  SVN_ERR(get_next_argument(&name, os, pool, pool));
-
-  if (opt_state->remove)
-    {
-      if (os->ind < os->argc)
-        return svn_error_create(SVN_ERR_CL_ARG_PARSING_ERROR, 0, NULL);
-
-      SVN_ERR(shelf_drop(name, local_abspath,
-                         opt_state->dry_run, opt_state->quiet,
-                         ctx, pool));
-      return SVN_NO_ERROR;
-    }
-
-  if (opt_state->log)
-    {
-      if (os->ind < os->argc)
-        return svn_error_create(SVN_ERR_CL_ARG_PARSING_ERROR, 0, NULL);
-
-      SVN_ERR(shelf_log(name, local_abspath,
-                        !opt_state->quiet, ctx, pool));
-      return SVN_NO_ERROR;
-    }
-
-  if (opt_state->show_diff)
-    {
-      const char *arg = NULL;
-
-      /* Which checkpoint number? */
-      if (os->ind < os->argc)
-        SVN_ERR(get_next_argument(&arg, os, pool, pool));
-
-      if (os->ind < os->argc)
-        return svn_error_create(SVN_ERR_CL_ARG_PARSING_ERROR, 0, NULL);
-
-      SVN_ERR(shelf_diff(name, arg, local_abspath,
-                         ctx, pool));
-      return SVN_NO_ERROR;
-    }
-
-  return SVN_NO_ERROR;
-}
-
 /*  */
 static svn_error_t *
 shelf_shelve(int *new_version,
@@ -709,6 +642,19 @@ shelf_shelve(int *new_version,
 
 /* This implements the `svn_opt_subcommand_t' interface. */
 svn_error_t *
+svn_cl__shelf_save(apr_getopt_t *os,
+                   void *baton,
+                   apr_pool_t *pool)
+{
+  svn_cl__opt_state_t *opt_state = ((svn_cl__cmd_baton_t *) baton)->opt_state;
+
+  opt_state->keep_local = TRUE;
+  SVN_ERR(svn_cl__shelve(os, baton, pool));
+  return SVN_NO_ERROR;
+}
+
+/* This implements the `svn_opt_subcommand_t' interface. */
+svn_error_t *
 svn_cl__shelve(apr_getopt_t *os,
                void *baton,
                apr_pool_t *pool)
@@ -746,9 +692,16 @@ svn_cl__shelve(apr_getopt_t *os,
         SVN_ERR(err);
 
       if (! opt_state->quiet)
-        SVN_ERR(svn_cmdline_printf(pool,
-                                   _("shelved '%s' version %d\n"),
-                                   name, new_version));
+        {
+          if (opt_state->keep_local)
+            SVN_ERR(svn_cmdline_printf(pool,
+                                       _("saved '%s' version %d\n"),
+                                       name, new_version));
+          else
+            SVN_ERR(svn_cmdline_printf(pool,
+                                       _("shelved '%s' version %d\n"),
+                                       name, new_version));
+        }
   }
 
   return SVN_NO_ERROR;
@@ -764,7 +717,7 @@ svn_cl__unshelve(apr_getopt_t *os,
   svn_client_ctx_t *ctx = ((svn_cl__cmd_baton_t *) baton)->ctx;
   const char *local_abspath;
   const char *name;
-  apr_array_header_t *targets;
+  const char *arg = NULL;
 
   SVN_ERR(svn_dirent_get_absolute(&local_abspath, "", scratch_pool));
 
@@ -781,17 +734,18 @@ svn_cl__unshelve(apr_getopt_t *os,
                                  name));
     }
 
-  /* There should be no remaining arguments. */
-  SVN_ERR(svn_cl__args_to_target_array_print_reserved(&targets, os,
-                                                      opt_state->targets,
-                                                      ctx, FALSE, 
scratch_pool));
-  if (targets->nelts)
-    return svn_error_create(SVN_ERR_CL_ARG_PARSING_ERROR, 0, NULL);
+  /* Which checkpoint number? */
+  if (os->ind < os->argc)
+    SVN_ERR(get_next_argument(&arg, os, scratch_pool, scratch_pool));
+
+  if (os->ind < os->argc)
+    return svn_error_create(SVN_ERR_CL_ARG_PARSING_ERROR, NULL,
+                            _("Too many arguments"));
 
   if (opt_state->quiet)
     ctx->notify_func2 = NULL; /* Easy out: avoid unneeded work */
 
-  SVN_ERR(shelf_restore(name, NULL,
+  SVN_ERR(shelf_restore(name, arg,
                         opt_state->dry_run, opt_state->quiet,
                         local_abspath, ctx, scratch_pool));
 
@@ -800,9 +754,9 @@ svn_cl__unshelve(apr_getopt_t *os,
 
 /* This implements the `svn_opt_subcommand_t' interface. */
 svn_error_t *
-svn_cl__shelves(apr_getopt_t *os,
-                void *baton,
-                apr_pool_t *pool)
+svn_cl__shelf_list(apr_getopt_t *os,
+                   void *baton,
+                   apr_pool_t *pool)
 {
   svn_cl__opt_state_t *opt_state = ((svn_cl__cmd_baton_t *) baton)->opt_state;
   svn_client_ctx_t *ctx = ((svn_cl__cmd_baton_t *) baton)->ctx;
@@ -889,7 +843,8 @@ svn_cl__shelf_log(apr_getopt_t *os,
 
   /* There should be no remaining arguments. */
   if (os->ind < os->argc)
-    return svn_error_create(SVN_ERR_CL_ARG_PARSING_ERROR, 0, NULL);
+    return svn_error_create(SVN_ERR_CL_ARG_PARSING_ERROR, 0,
+                            _("Too many arguments"));
 
   SVN_ERR(svn_dirent_get_absolute(&local_abspath, "", pool));
   SVN_ERR(shelf_log(name, local_abspath,
@@ -901,103 +856,61 @@ svn_cl__shelf_log(apr_getopt_t *os,
 
 /* This implements the `svn_opt_subcommand_t' interface. */
 svn_error_t *
-svn_cl__checkpoint(apr_getopt_t *os,
-                   void *baton,
-                   apr_pool_t *pool)
+svn_cl__shelf(apr_getopt_t *os,
+              void *baton,
+              apr_pool_t *pool)
 {
   svn_cl__opt_state_t *opt_state = ((svn_cl__cmd_baton_t *) baton)->opt_state;
-  svn_client_ctx_t *ctx = ((svn_cl__cmd_baton_t *) baton)->ctx;
   const char *subsubcommand;
-  apr_array_header_t *targets;
-  const char *local_abspath;
-  const char *name;
-
-  SVN_ERR(get_next_argument(&subsubcommand, os, pool, pool));
-
-  SVN_ERR(get_next_argument(&name, os, pool, pool));
-
-  /* Parse the remaining arguments as paths. */
-  SVN_ERR(svn_cl__args_to_target_array_print_reserved(&targets, os,
-                                                      opt_state->targets,
-                                                      ctx, FALSE, pool));
-  SVN_ERR(svn_dirent_get_absolute(&local_abspath, "", pool));
-
-  if (opt_state->quiet)
-    ctx->notify_func2 = NULL;
 
-  if (strcmp(subsubcommand, "log") == 0)
+  if (opt_state->show_diff)
     {
-      if (targets->nelts)
-        return svn_error_create(SVN_ERR_CL_ARG_PARSING_ERROR, NULL,
-                                _("Too many arguments"));
-
-      SVN_ERR(shelf_log(name, local_abspath,
-                        !opt_state->quiet /*diffstat*/,
-                        ctx, pool));
+      SVN_ERR(svn_cl__shelf_diff(os, baton, pool));
+      return SVN_NO_ERROR;
     }
-  else if (strcmp(subsubcommand, "save") == 0)
+  else if (opt_state->remove)
     {
-      int new_version;
-      svn_error_t *err;
-
-      if (ctx->log_msg_func3)
-        SVN_ERR(svn_cl__make_log_msg_baton(&ctx->log_msg_baton3,
-                                           opt_state, NULL, ctx->config,
-                                           pool));
-      err = shelf_shelve(&new_version, name,
-                         targets, opt_state->depth, opt_state->changelists,
-                         TRUE /*keep_local*/, opt_state->dry_run,
-                         ctx, pool);
-      if (ctx->log_msg_func3)
-        SVN_ERR(svn_cl__cleanup_log_msg(ctx->log_msg_baton3,
-                                        err, pool));
-      else
-        SVN_ERR(err);
-
-      if (!opt_state->quiet)
-        SVN_ERR(svn_cmdline_printf(pool,
-                                   _("saved '%s' version %d\n"),
-                                   name, new_version));
-    }
-  else if (strcmp(subsubcommand, "restore") == 0)
-    {
-      const char *arg = NULL;
-
-      if (targets->nelts > 1)
-        return svn_error_create(SVN_ERR_CL_ARG_PARSING_ERROR, NULL,
-                                _("Too many arguments"));
-
-      /* Which checkpoint number? */
-      if (targets->nelts != 1)
-        arg = NULL;
-      else
-        arg = APR_ARRAY_IDX(targets, 0, char *);
-
-      SVN_ERR(shelf_restore(name, arg,
-                            opt_state->dry_run, opt_state->quiet,
-                            local_abspath, ctx, pool));
+      SVN_ERR(svn_cl__shelf_drop(os, baton, pool));
+      return SVN_NO_ERROR;
     }
-  else if (strcmp(subsubcommand, "diff") == 0)
+  else if (opt_state->list)
     {
-      const char *arg;
-
-      /* Which checkpoint number? */
-      if (os->ind < os->argc)
-        arg = NULL;
-      else
-        arg = APR_ARRAY_IDX(targets, 0, char *);
+      SVN_ERR(svn_cl__shelf_list(os, baton, pool));
+      return SVN_NO_ERROR;
+    }
+  else if (opt_state->log)
+    {
+      SVN_ERR(svn_cl__shelf_log(os, baton, pool));
+      return SVN_NO_ERROR;
+    }
 
-      if (os->ind < os->argc)
-        return svn_error_create(SVN_ERR_CL_ARG_PARSING_ERROR, NULL,
-                                _("Too many arguments"));
+  SVN_ERR(get_next_argument(&subsubcommand, os, pool, pool));
 
-      SVN_ERR(shelf_diff(name, arg, local_abspath, ctx, pool));
+  if (strcmp(subsubcommand, "diff") == 0)
+    {
+      SVN_ERR(svn_cl__shelf_diff(os, baton, pool));
+    }
+  else if (strcmp(subsubcommand, "drop") == 0)
+    {
+      SVN_ERR(svn_cl__shelf_drop(os, baton, pool));
+    }
+  else if (strcmp(subsubcommand, "list") == 0)
+    {
+      SVN_ERR(svn_cl__shelf_list(os, baton, pool));
+    }
+  else if (strcmp(subsubcommand, "log") == 0)
+    {
+      SVN_ERR(svn_cl__shelf_log(os, baton, pool));
+    }
+  else if (strcmp(subsubcommand, "save") == 0)
+    {
+      SVN_ERR(svn_cl__shelf_save(os, baton, pool));
     }
   else
     {
       return svn_error_createf(SVN_ERR_CL_INSUFFICIENT_ARGS, NULL,
-                               _("checkpoint: Unknown checkpoint command '%s'; 
"
-                                 "try 'svn help checkpoint'"),
+                               _("Unknown shelf command '%s'; "
+                                 "try 'svn help shelf'"),
                                subsubcommand);
     }
 

Modified: subversion/branches/shelve-checkpoint/subversion/svn/svn.c
URL: 
http://svn.apache.org/viewvc/subversion/branches/shelve-checkpoint/subversion/svn/svn.c?rev=1821003&r1=1821002&r2=1821003&view=diff
==============================================================================
--- subversion/branches/shelve-checkpoint/subversion/svn/svn.c (original)
+++ subversion/branches/shelve-checkpoint/subversion/svn/svn.c Fri Jan 12 
16:32:25 2018
@@ -474,7 +474,7 @@ const apr_getopt_option_t svn_cl__option
   {"vacuum-pristines", opt_vacuum_pristines, 0,
                        N_("remove unreferenced pristines from .svn 
directory")},
 
-  {"list", opt_list, 0, N_("list shelves or checkpoints")},
+  {"list", opt_list, 0, N_("list shelves")},
   {"drop", opt_drop, 0, N_("delete a shelf")},
   {"log", opt_log, 0, N_("show versions of a shelf")},
 
@@ -1690,66 +1690,34 @@ const svn_opt_subcommand_desc2_t svn_cl_
      "  the output of 'svn help merge' for 'undo'.\n"),
     {opt_targets, 'R', opt_depth, 'q', opt_changelist} },
 
-  { "savepoint", svn_cl__checkpoint, {"sp", "checkpoint"}, N_
-    ("Save and restore local changes.\n"
-     "usage: 1. savepoint save NAME [PATH...]\n"
-     "       2. savepoint restore NAME [VERSION]\n"
-     "       3. savepoint log NAME\n"
-     "       4. savepoint diff NAME [VERSION]\n"
-     "\n"
-     "  1. Save local changes in the given PATHs as a new version of shelf 
NAME.\n"
-     "     A new log message can be given with -m, -F, etc.\n"
-     "\n"
-     "     The same as 'svn shelve --keep-local'.\n"
-     "\n"
-     "  2. Apply the VERSION (default: latest) of shelf NAME to the working 
copy.\n"
-     "\n"
-     "     The same as 'svn unshelve'.\n"
-     "\n"
-     "  3. List all versions of shelf NAME.\n"
-     "\n"
-     "  4. Show the changes in shelf NAME:VERSION (default: latest) as a 
diff.\n"
-     "\n"
-     "  The default PATH is the current working directory.\n"
+  { "shelf", svn_cl__shelf, {0}, N_
+    ("Examine or manage a shelf.\n"
+     "usage: 1. shelf diff | shelf --diff  -> see shelf-diff\n"
+     "       2. shelf drop | shelf --drop  -> see shelf-drop\n"
+     "       3. shelf list | shelf --list  -> see shelf-list (shelves)\n"
+     "       4. shelf log  | shelf --log   -> see shelf-log\n"
+     "       5. shelf save                 -> see shelf-save\n"
+     "\n"
+     "  See also:\n"
+     "    shelve\n"
+     "    unshelve\n"
      "\n"
      "  The shelving feature is EXPERIMENTAL. This command is likely to 
change\n"
      "  in the next release, and there is no promise of backward 
compatibility.\n"
     ),
-    {'q', opt_dry_run,
+    {opt_diff, opt_drop, opt_list, opt_log,
+     opt_dry_run, 'q',
      opt_depth, opt_targets, opt_changelist,
      /* almost SVN_CL__LOG_MSG_OPTIONS but not currently opt_with_revprop: */
      'm', 'F', opt_force_log, opt_editor_cmd, opt_encoding,
     }
   },
 
-  { "shelf", svn_cl__shelf, {0}, N_
-    ("Examine or manage a shelf.\n"
-     "usage: 1. shelf --diff NAME [VERSION]\n"
-     "       2. shelf --drop [--dry-run] NAME\n"
-     "       3. shelf --list\n"
-     "       4. shelf --log NAME\n"
-     "\n"
-     "  1. Show the changes in shelf NAME:VERSION (default: latest) as a 
diff.\n"
-     "\n"
-     "  2. Delete the shelf named NAME.\n"
-     "\n"
-     "  3. List shelves. Include the first line of any log message\n"
-     "     and some details about the contents of the shelf, unless '-q' is\n"
-     "     given.\n"
-     "\n"
-     "  4. List all versions of shelf NAME.\n"
-     "\n"
-     "  The shelving feature is EXPERIMENTAL. This command is likely to 
change\n"
-     "  in the next release, and there is no promise of backward 
compatibility.\n"
-    ),
-    {opt_diff, opt_drop, opt_list, opt_log, opt_dry_run, 'q'}
-  },
-
   { "shelf-diff", svn_cl__shelf_diff, {0}, N_
     ("Show shelved changes as a diff.\n"
      "usage: shelf-diff NAME [VERSION]\n"
      "\n"
-     "  Export the shelf NAME:VERSION (default: latest) as a patch.\n"
+     "  Show the changes in shelf NAME:VERSION (default: latest) as a diff.\n"
      "\n"
      "  The shelving feature is EXPERIMENTAL. This command is likely to 
change\n"
      "  in the next release, and there is no promise of backward 
compatibility.\n"
@@ -1767,7 +1735,7 @@ const svn_opt_subcommand_desc2_t svn_cl_
     ),
   },
 
-  { "shelf-list", svn_cl__shelves, {"shelves"}, N_
+  { "shelf-list", svn_cl__shelf_list, {"shelves"}, N_
     ("List shelves.\n"
      "usage: shelf-list\n"
      "\n"
@@ -1785,14 +1753,35 @@ const svn_opt_subcommand_desc2_t svn_cl_
     ("Show the versions of a shelf.\n"
      "usage: shelf-log NAME\n"
      "\n"
+     "  Show all versions of shelf NAME.\n"
+     "\n"
      "  The shelving feature is EXPERIMENTAL. This command is likely to 
change\n"
      "  in the next release, and there is no promise of backward 
compatibility.\n"
     ),
     {'q'}
   },
 
+  { "shelf-save", svn_cl__shelf_save, {0}, N_
+    ("Copy local changes onto a new version of a shelf.\n"
+     "usage: shelf-log NAME\n"
+     "\n"
+     "  Save local changes in the given PATHs as a new version of shelf 
NAME.\n"
+     "  A new log message can be given with -m, -F, etc.\n"
+     "\n"
+     "  The same as 'svn shelve --keep-local'.\n"
+     "\n"
+     "  The shelving feature is EXPERIMENTAL. This command is likely to 
change\n"
+     "  in the next release, and there is no promise of backward 
compatibility.\n"
+    ),
+    {'q', opt_dry_run,
+     opt_depth, opt_targets, opt_changelist,
+     /* almost SVN_CL__LOG_MSG_OPTIONS but not currently opt_with_revprop: */
+     'm', 'F', opt_force_log, opt_editor_cmd, opt_encoding,
+    }
+  },
+
   { "shelve", svn_cl__shelve, {0}, N_
-    ("Put local changes aside, as if putting them on a shelf.\n"
+    ("Move local changes onto a shelf.\n"
      "usage: shelve [--keep-local] NAME [PATH...]\n"
      "\n"
      "  Save the local changes in the given PATHs to a shelf named NAME.\n"
@@ -1800,7 +1789,7 @@ const svn_opt_subcommand_desc2_t svn_cl_
      "  If a log message is given with '-m' or '-F', replace the shelf's\n"
      "  current log message (if any).\n"
      "\n"
-     "  'svn shelve --keep-local' is like 'svn checkpoint save'.\n"
+     "  'svn shelve --keep-local' is the same as 'svn shelf-save'.\n"
      "\n"
      "  The kinds of change you can shelve are those supported by 'svn diff'\n"
      "  and 'svn patch'. The following are currently NOT supported:\n"
@@ -1821,13 +1810,13 @@ const svn_opt_subcommand_desc2_t svn_cl_
     } },
 
   { "unshelve", svn_cl__unshelve, {0}, N_
-    ("Bring shelved changes back into the WC.\n"
-     "usage: unshelve [NAME]\n"
+    ("Copy shelved changes back into the WC.\n"
+     "usage: unshelve [NAME [VERSION]]\n"
      "\n"
      "  Apply the shelf named NAME to the working copy.\n"
-     "  NAME defaults to the most recent shelf.\n"
+     "  NAME defaults to the newest shelf.\n"
      "\n"
-     "  Like 'svn checkpoint restore'.\n"
+     "  The same as 'svn shelf-restore'.\n"
      "\n"
      "  Any conflict between the change being unshelved and a change\n"
      "  already in the WC is handled the same way as by 'svn patch',\n"
@@ -1838,15 +1827,6 @@ const svn_opt_subcommand_desc2_t svn_cl_
     ),
     {'q', opt_dry_run} },
 
-  { "shelves", svn_cl__shelves, {0}, N_
-    ("List shelves.\n"
-     "usage: shelves\n"
-     "\n"
-     "  The shelving feature is EXPERIMENTAL. This command is likely to 
change\n"
-     "  in the next release, and there is no promise of backward 
compatibility.\n"
-    ),
-    {'q'} },
-
   { "status", svn_cl__status, {"stat", "st"}, N_
     ("Print the status of working copy files and directories.\n"
      "usage: status [PATH...]\n"
@@ -3115,7 +3095,7 @@ sub_main(int *exit_code, int argc, const
           || subcommand->cmd_func == svn_cl__move
           || subcommand->cmd_func == svn_cl__lock
           || subcommand->cmd_func == svn_cl__propedit
-          || subcommand->cmd_func == svn_cl__checkpoint
+          || subcommand->cmd_func == svn_cl__shelf
           || subcommand->cmd_func == svn_cl__shelve))
     {
       /* If the -F argument is a file that's under revision control,

Modified: 
subversion/branches/shelve-checkpoint/subversion/tests/cmdline/shelve_tests.py
URL: 
http://svn.apache.org/viewvc/subversion/branches/shelve-checkpoint/subversion/tests/cmdline/shelve_tests.py?rev=1821003&r1=1821002&r2=1821003&view=diff
==============================================================================
--- 
subversion/branches/shelve-checkpoint/subversion/tests/cmdline/shelve_tests.py 
(original)
+++ 
subversion/branches/shelve-checkpoint/subversion/tests/cmdline/shelve_tests.py 
Fri Jan 12 16:32:25 2018
@@ -178,14 +178,14 @@ def save_revert_restore(sbox, modifier1,
 
   # Save a checkpoint; check nothing changed
   svntest.actions.run_and_verify_svn(None, [],
-                                     'sp', 'save', 'foo')
+                                     'shelf-save', 'foo')
   svntest.actions.run_and_verify_status(wc_dir, modified_state1)
 
   # Modify again; remember the state; save a checkpoint
   modifier2(sbox)
   modified_state2 = state_from_status(wc_dir)
   svntest.actions.run_and_verify_svn(None, [],
-                                     'sp', 'save', 'foo')
+                                     'shelf-save', 'foo')
   svntest.actions.run_and_verify_status(wc_dir, modified_state2)
 
   # Revert
@@ -196,7 +196,7 @@ def save_revert_restore(sbox, modifier1,
 
   # Restore; check the original modifications are here again
   svntest.actions.run_and_verify_svn(None, [],
-                                     'sp', 'restore', 'foo', '1')
+                                     'unshelve', 'foo', '1')
   svntest.actions.run_and_verify_status(wc_dir, modified_state1)
 
   os.chdir(was_cwd)

Modified: 
subversion/branches/shelve-checkpoint/tools/client-side/bash_completion
URL: 
http://svn.apache.org/viewvc/subversion/branches/shelve-checkpoint/tools/client-side/bash_completion?rev=1821003&r1=1821002&r2=1821003&view=diff
==============================================================================
--- subversion/branches/shelve-checkpoint/tools/client-side/bash_completion 
(original)
+++ subversion/branches/shelve-checkpoint/tools/client-side/bash_completion Fri 
Jan 12 16:32:25 2018
@@ -248,8 +248,8 @@ _svn()
        cmds="$cmds patch propdel pdel propedit pedit propget pget proplist"
        cmds="$cmds plist propset pset relocate resolve resolved revert status"
        cmds="$cmds switch unlock update upgrade"
-       cmds="$cmds checkpoint savepoint sp"
-       cmds="$cmds shelve shelves unshelve"
+       cmds="$cmds shelf shelf-diff shelf-drop shelf-list shelf-log"
+       cmds="$cmds shelf-save shelve shelves unshelve"
 
        # help options have a strange command status...
        local helpOpts='--help -h'
@@ -1023,29 +1023,32 @@ _svn()
        upgrade)
                cmdOpts="$qOpts $pOpts"
                ;;
-       checkpoint|savepoint|sp)
-               cmdOpts="save restore log diff --dry-run \
+       shelf)
+               cmdOpts="diff drop list log save \
+                         --diff --drop --list --log \
+                         --dry-run \
                          --depth --targets $cOpts \
                          -m --message -F --file --encoding --force-log 
--editor-cmd \
                          $qOpts $pOpts"
                ;;
-       shelf)
-               cmdOpts="diff drop list log \
-                         --diff --drop --list --log --dry-run \
-                         $qOpts $pOpts"
-               ;;
        shelf-diff)
                cmdOpts="$pOpts"
                ;;
        shelf-drop)
                cmdOpts="$pOpts"
                ;;
-       shelf-list)
+       shelf-list|shelves)
                cmdOpts="$qOpts $pOpts"
                ;;
        shelf-log)
                cmdOpts="$qOpts $pOpts"
                ;;
+       shelf-save)
+               cmdOpts="--dry-run \
+                         --depth --targets $cOpts \
+                         -m --message -F --file --encoding --force-log 
--editor-cmd \
+                         $qOpts $pOpts"
+               ;;
        shelve)
                cmdOpts="--keep-local --dry-run \
                          --depth --targets $cOpts \
@@ -1056,9 +1059,6 @@ _svn()
                cmdOpts="--dry-run \
                          $qOpts $pOpts"
                ;;
-       shelves)
-               cmdOpts="$qOpts $pOpts"
-               ;;
        *)
                ;;
        esac


Reply via email to