branch: mention start_name in set-upstream error messages

If we refuse a branch operation because the tracking
start_name the user gave us is bogus, we just print
something like:

 fatal: Cannot setup tracking information; start point is not a branch

If we mention the actual name we tried to use, that may help
the user figure out why it didn't work (e.g., if they gave
us the arguments in the wrong order).

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Jeff King 2013-04-02 15:04:51 -04:00 committed by Junio C Hamano
parent a5e91c722c
commit 1a15d00bb9

View File

@ -198,9 +198,9 @@ int validate_new_branchname(const char *name, struct strbuf *ref,
}
static const char upstream_not_branch[] =
N_("Cannot setup tracking information; starting point is not a branch.");
N_("Cannot setup tracking information; starting point '%s' is not a branch.");
static const char upstream_missing[] =
N_("Cannot setup tracking information; starting point does not exist");
N_("Cannot setup tracking information; starting point '%s' does not exist");
void create_branch(const char *head,
const char *name, const char *start_name,
@ -231,7 +231,7 @@ void create_branch(const char *head,
real_ref = NULL;
if (get_sha1(start_name, sha1)) {
if (explicit_tracking)
die(_(upstream_missing));
die(_(upstream_missing), start_name);
die("Not a valid object name: '%s'.", start_name);
}
@ -239,14 +239,14 @@ void create_branch(const char *head,
case 0:
/* Not branching from any existing branch */
if (explicit_tracking)
die(_(upstream_not_branch));
die(_(upstream_not_branch), start_name);
break;
case 1:
/* Unique completion -- good, only if it is a real branch */
if (prefixcmp(real_ref, "refs/heads/") &&
prefixcmp(real_ref, "refs/remotes/")) {
if (explicit_tracking)
die(_(upstream_not_branch));
die(_(upstream_not_branch), start_name);
else
real_ref = NULL;
}