Provide better message for barnhc_wiht_tpyo@{u}

Instead of just saying that no upstream exists for such branch,
which is true but not very helpful, check that there's no
refs/heads/barnhc_wiht_tpyo and tell it to the user.

Signed-off-by: Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Zbigniew Jędrzejewski-Szmek 2012-04-14 09:54:33 +02:00 committed by Junio C Hamano
parent 9884e67f9d
commit bb0dab5d61
2 changed files with 5 additions and 2 deletions

View file

@ -862,8 +862,11 @@ int interpret_branch_name(const char *name, struct strbuf *buf)
*/
if (!upstream)
return error("HEAD does not point to a branch");
if (!upstream->merge || !upstream->merge[0]->dst)
if (!upstream->merge || !upstream->merge[0]->dst) {
if (!ref_exists(upstream->refname))
return error("No such branch: '%s'", cp);
return error("No upstream branch found for '%s'", upstream->name);
}
free(cp);
cp = shorten_unambiguous_ref(upstream->merge[0]->dst, 0);
strbuf_reset(buf);

View file

@ -143,7 +143,7 @@ test_expect_success '@{u} error message when no upstream' '
test_expect_success 'branch@{u} error message with misspelt branch' '
cat >expect <<-EOF &&
error: No upstream branch found for ${sq}no-such-branch${sq}
error: No such branch: ${sq}no-such-branch${sq}
fatal: Needed a single revision
EOF
error_message no-such-branch@{u} 2>actual &&