You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by ju...@apache.org on 2013/01/30 15:03:08 UTC

svn commit: r1440421 - /subversion/trunk/subversion/svn/conflict-callbacks.c

Author: julianfoad
Date: Wed Jan 30 14:03:07 2013
New Revision: 1440421

URL: http://svn.apache.org/viewvc?rev=1440421&view=rev
Log:
Implement a 'quit' option in the interactive conflict resolver. It postpones
all remaining conflicts.

* subversion/svn/conflict-callbacks.c
  (text_conflict_options, prop_conflict_options,
   obstructed_add_options, tree_conflict_options): Add the option.
  (handle_text_conflict, handle_prop_conflict,
   handle_tree_conflict, handle_obstructed_add): Implement it.

Modified:
    subversion/trunk/subversion/svn/conflict-callbacks.c

Modified: subversion/trunk/subversion/svn/conflict-callbacks.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svn/conflict-callbacks.c?rev=1440421&r1=1440420&r2=1440421&view=diff
==============================================================================
--- subversion/trunk/subversion/svn/conflict-callbacks.c (original)
+++ subversion/trunk/subversion/svn/conflict-callbacks.c Wed Jan 30 14:03:07 2013
@@ -336,6 +336,8 @@ static const resolver_option_t text_conf
                               svn_wc_conflict_choose_postpone },
   { "m",  "merge",            N_("use internal merge tool to resolve conflict"), -1 },
   { "l",  "launch",           N_("launch external tool to resolve conflict"), -1 },
+  { "q",  "quit",             N_("postpone all remaining conflicts"),
+                              svn_cl__accept_postpone },
   { "s",  "show all options", N_("show this list (also 'h', '?')"), -1 },
   { NULL }
 };
@@ -350,6 +352,8 @@ static const resolver_option_t prop_conf
                               svn_wc_conflict_choose_mine_full },
   { "tf", "theirs-full",      N_("accept their version of entire file (same)"),
                               svn_wc_conflict_choose_theirs_full },
+  { "q",  "quit",             N_("postpone all remaining conflicts"),
+                              svn_cl__accept_postpone },
   { "h",  "help",             N_("show this help (also '?')"), -1 },
   { NULL }
 };
@@ -363,6 +367,8 @@ static const resolver_option_t obstructe
                               svn_wc_conflict_choose_mine_full },
   { "tf", "theirs-full",      N_("accept incoming item (overwrite pre-existing item)"),
                               svn_wc_conflict_choose_theirs_full },
+  { "q",  "quit",             N_("postpone all remaining conflicts"),
+                              svn_cl__accept_postpone },
   { "h",  "help",             N_("show this help (also '?')"), -1 },
   { NULL }
 };
@@ -378,6 +384,8 @@ static const resolver_option_t tree_conf
                               svn_wc_conflict_choose_mine_conflict },
   { "tc", "theirs-conflict",  N_("prefer incoming change"),
                               svn_wc_conflict_choose_theirs_conflict },
+  { "q",  "quit",             N_("postpone all remaining conflicts"),
+                              svn_cl__accept_postpone },
   { "h",  "help",             N_("show this help (also '?')"), -1 },
   { NULL }
 };
@@ -576,7 +584,13 @@ handle_text_conflict(svn_wc_conflict_res
       if (! opt)
         continue;
 
-      if (strcmp(opt->code, "s") == 0)
+      if (strcmp(opt->code, "q") == 0)
+        {
+          result->choice = opt->choice;
+          b->accept_which = opt->choice;
+          break;
+        }
+      else if (strcmp(opt->code, "s") == 0)
         {
           SVN_ERR(svn_cmdline_fprintf(stderr, scratch_pool, "\n%s\n",
                                       help_string(text_conflict_options,
@@ -765,7 +779,13 @@ handle_prop_conflict(svn_wc_conflict_res
       if (! opt)
         continue;
 
-      if (opt->choice != -1)
+      if (strcmp(opt->code, "q") == 0)
+        {
+          result->choice = opt->choice;
+          b->accept_which = opt->choice;
+          break;
+        }
+      else if (opt->choice != -1)
         {
           result->choice = opt->choice;
           break;
@@ -811,7 +831,13 @@ handle_tree_conflict(svn_wc_conflict_res
       if (! opt)
         continue;
 
-      if (opt->choice != -1)
+      if (strcmp(opt->code, "q") == 0)
+        {
+          result->choice = opt->choice;
+          b->accept_which = opt->choice;
+          break;
+        }
+      else if (opt->choice != -1)
         {
           result->choice = opt->choice;
           break;
@@ -854,7 +880,13 @@ handle_obstructed_add(svn_wc_conflict_re
       if (! opt)
         continue;
 
-      if (opt->choice != -1)
+      if (strcmp(opt->code, "q") == 0)
+        {
+          result->choice = opt->choice;
+          b->accept_which = opt->choice;
+          break;
+        }
+      else if (opt->choice != -1)
         {
           result->choice = opt->choice;
           break;