Thread (3 messages) flat view 3 messages, 3 authors, 2016-06-15

Re: [RFC/PATCH] checkout: allow dwim for branch creation for "git checkout $branch --"

From: Duy Nguyen <hidden>
Date: 2016-06-15 22:58:54

Possibly related (same subject, not in this thread)

On Wed, Sep 25, 2013 at 8:52 PM, Matthieu Moy
[off-list ref] wrote:
quoted hunk ↗ jump to hunk
@@ -925,7 +926,15 @@ static int parse_branchname_arg(int argc, const char **argv,
                return 1;

        arg = argv[0];
-       has_dash_dash = (argc > 1) && !strcmp(argv[1], "--");
+       has_dash_dash = 0;
+       for (i = 0; i < argc; i++) {
+               if (!strcmp(argv[i], "--")) {
+                       has_dash_dash = i;
+                       break;
+               }
+       }
+       if (has_dash_dash >= 2)
+               die("only one reference expected, %d given.", has_dash_dash);
The translator in me says this string should be marked for translation
like others in git-checkout...
quoted hunk ↗ jump to hunk
        if (!strcmp(arg, "-"))
                arg = "@{-1}";
diff --git a/t/t2010-checkout-ambiguous.sh b/t/t2010-checkout-ambiguous.sh
index 7cc0a35..2836a3e 100755
--- a/t/t2010-checkout-ambiguous.sh
+++ b/t/t2010-checkout-ambiguous.sh
@@ -47,4 +47,10 @@ test_expect_success 'disambiguate checking out from a tree-ish' '
        git diff --exit-code --quiet
 '

+test_expect_success 'accurate error message with more than one ref' '
+       test_must_fail git checkout HEAD master -- 2>actual &&
+       echo "fatal: only one reference expected, 2 given." >expect &&
+       test_cmp expect actual
+'
+
 test_done
which makes C_LOCALE_OUTPUT a prerequisite for this test because it
needs the untranslated version of the string.
I'll resend, together with tweaks to the first patch.

--
Matthieu Moy
http://www-verimag.imag.fr/~moy/


-- 
Duy
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help