]> git.ipfire.org Git - thirdparty/git.git/commitdiff
switch: fix errors and comments related to -c and -C
authorDenton Liu <liu.denton@gmail.com>
Thu, 30 Apr 2020 11:54:57 +0000 (07:54 -0400)
committerJunio C Hamano <gitster@pobox.com>
Thu, 30 Apr 2020 20:43:31 +0000 (13:43 -0700)
In d787d311db (checkout: split part of it to new command 'switch',
2019-03-29), the `git switch` command was created by extracting the
common functionality of cmd_checkout() in checkout_main(). However, in
b7b5fce270 (switch: better names for -b and -B, 2019-03-29), the branch
creation and force creation options for 'switch' were changed to -c and
-C, respectively. As a result of this, error messages and comments that
previously referred to `-b` and `-B` became invalid for `git switch`.

For error messages that refer to `-b` and `-B`, use a format string
instead so that `-c` and `-C` can be printed when `git switch` is
invoked.

Reported-by: Robert Simpson
Signed-off-by: Denton Liu <liu.denton@gmail.com>
Reviewed-by: Taylor Blau <me@ttaylorr.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/checkout.c

index 3634a3dac15ae9deca30325ef5b19d5b3e250eb0..ecd0b1514844a4f46599217e16415639f2587dad 100644 (file)
@@ -1487,6 +1487,9 @@ static struct option *add_checkout_path_options(struct checkout_opts *opts,
        return newopts;
 }
 
+/* create-branch option (either b or c) */
+static char cb_option = 'b';
+
 static int checkout_main(int argc, const char **argv, const char *prefix,
                         struct checkout_opts *opts, struct option *options,
                         const char * const usagestr[])
@@ -1530,7 +1533,8 @@ static int checkout_main(int argc, const char **argv, const char *prefix,
        }
 
        if ((!!opts->new_branch + !!opts->new_branch_force + !!opts->new_orphan_branch) > 1)
-               die(_("-b, -B and --orphan are mutually exclusive"));
+               die(_("-%c, -%c and --orphan are mutually exclusive"),
+                               cb_option, toupper(cb_option));
 
        if (opts->overlay_mode == 1 && opts->patch_mode)
                die(_("-p and --overlay are mutually exclusive"));
@@ -1558,7 +1562,7 @@ static int checkout_main(int argc, const char **argv, const char *prefix,
        /*
         * From here on, new_branch will contain the branch to be checked out,
         * and new_branch_force and new_orphan_branch will tell us which one of
-        * -b/-B/--orphan is being used.
+        * -b/-B/-c/-C/--orphan is being used.
         */
        if (opts->new_branch_force)
                opts->new_branch = opts->new_branch_force;
@@ -1566,7 +1570,7 @@ static int checkout_main(int argc, const char **argv, const char *prefix,
        if (opts->new_orphan_branch)
                opts->new_branch = opts->new_orphan_branch;
 
-       /* --track without -b/-B/--orphan should DWIM */
+       /* --track without -c/-C/-b/-B/--orphan should DWIM */
        if (opts->track != BRANCH_TRACK_UNSPECIFIED && !opts->new_branch) {
                const char *argv0 = argv[0];
                if (!argc || !strcmp(argv0, "--"))
@@ -1575,7 +1579,7 @@ static int checkout_main(int argc, const char **argv, const char *prefix,
                skip_prefix(argv0, "remotes/", &argv0);
                argv0 = strchr(argv0, '/');
                if (!argv0 || !argv0[1])
-                       die(_("missing branch name; try -b"));
+                       die(_("missing branch name; try -%c"), cb_option);
                opts->new_branch = argv0 + 1;
        }
 
@@ -1766,6 +1770,8 @@ int cmd_switch(int argc, const char **argv, const char *prefix)
        options = add_common_options(&opts, options);
        options = add_common_switch_branch_options(&opts, options);
 
+       cb_option = 'c';
+
        ret = checkout_main(argc, argv, prefix, &opts,
                            options, switch_branch_usage);
        FREE_AND_NULL(options);