git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH 4/5] Be more specific if upstream branch is not fetched

From
Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
Date
Apr 11, 2012, 16:17 UTC
Message-ID
<1334161035-26355-5-git-send-email-zbyszek@in.waw.pl>
In-Reply-To
<1334161035-26355-1-git-send-email-zbyszek@in.waw.pl>

If the branch configured as upstream was missing from remote.<remote>.fetch, git said "Upstream branch not found". We can be more helpful, and separate the cases when upstream is not configured, and when it is configured, but specific branch is not fetched.

Signed-off-by: Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>
---
 sha1_name.c                   | 6 +++++-
 t/t1507-rev-parse-upstream.sh | 6 +++---
 2 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/sha1_name.c b/sha1_name.c
index e2d576a..5b1b0f9 100644
--- a/sha1_name.c
+++ b/sha1_name.c
@@ -865,7 +865,11 @@ int interpret_branch_name(const char *name, struct strbuf *buf)
 	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);
+		if (!upstream->merge)
+			return error("No upstream configured for branch '%s'",
+				     upstream->name);
+		return error("Upstream branch '%s' not fetched from remote '%s'",
+			     upstream->merge[0]->src, upstream->remote_name);
 	}
 	free(cp);
 	cp = shorten_unambiguous_ref(upstream->merge[0]->dst, 0);
diff --git a/t/t1507-rev-parse-upstream.sh b/t/t1507-rev-parse-upstream.sh
index 05c4bc4..112025f 100755
--- a/t/t1507-rev-parse-upstream.sh
+++ b/t/t1507-rev-parse-upstream.sh
@@ -125,7 +125,7 @@ test_expect_success 'branch@{u} works when tracking a local branch' '
 
 test_expect_success 'branch@{u} error message when no upstream' '
 	cat >expect <<-EOF &&
-	error: No upstream branch found for ${sq}non-tracking${sq}
+	error: No upstream configured for branch ${sq}non-tracking${sq}
 	fatal: Needed a single revision
 	EOF
 	(cd clone &&
@@ -135,7 +135,7 @@ test_expect_success 'branch@{u} error message when no upstream' '
 
 test_expect_success '@{u} error message when no upstream' '
 	cat >expect <<-EOF &&
-	error: No upstream branch found for ${sq}master${sq}
+	error: No upstream configured for branch ${sq}master${sq}
 	fatal: Needed a single revision
 	EOF
 	test_must_fail git rev-parse --verify @{u} 2>actual &&
@@ -163,7 +163,7 @@ test_expect_success '@{u} error message when not on a branch' '
 
 test_expect_success 'branch@{u} error message if upstream branch not fetched' '
 	cat >expect <<-EOF &&
-	error: No upstream branch found for ${sq}bad-upstream${sq}
+	error: Upstream branch ${sq}refs/heads/side${sq} not fetched from remote ${sq}master-only${sq}
 	fatal: Needed a single revision
 	EOF
 	error_message bad-upstream@{u} 2>actual &&
-- 
1.7.10.344.g387ed
Previous: Zbigniew Jędrzejewski-SzmekNext: Jeff King
Message 12 of 24 in “provide better error messages for @{upstream}”
  1. 0/5 provide better error messages for @{upstream}Zbigniew Jędrzejewski-Szmek, Apr 11, 2012
  2. 1/5 t1507: add additional tests for @{upstream}Zbigniew Jędrzejewski-Szmek, Apr 11, 2012
  3. Junio C HamanoApr 11, 2012
  4. Junio C HamanoApr 11, 2012
  5. Zbigniew Jędrzejewski-SzmekApr 11, 2012
  6. Matthieu MoyApr 11, 2012
  7. Zbigniew Jędrzejewski-SzmekApr 11, 2012
  8. 2/5 Provide branch name in error message when using @{u}Zbigniew Jędrzejewski-Szmek, Apr 11, 2012
  9. Junio C HamanoApr 11, 2012
  10. Zbigniew Jędrzejewski-SzmekApr 11, 2012
  11. 3/5 Provide better message for barnhc_wiht_tpyo@{u}Zbigniew Jędrzejewski-Szmek, Apr 11, 2012
  12. 4/5 Be more specific if upstream branch is not fetchedZbigniew Jędrzejewski-Szmek, Apr 11, 2012
  13. Jeff KingApr 12, 2012
  14. Zbigniew Jędrzejewski-SzmekApr 12, 2012
  15. Junio C HamanoApr 12, 2012
  16. Jeff KingApr 12, 2012
  17. 0/5 provide better error messages for @{upstream}Zbigniew Jędrzejewski-Szmek, Apr 14, 2012
  18. 1/5 t1507: add tests to document @{upstream} behaviourZbigniew Jędrzejewski-Szmek, Apr 14, 2012
  19. 2/5 Provide branch name in error message when using @{u}Zbigniew Jędrzejewski-Szmek, Apr 14, 2012
  20. 3/5 Provide better message for barnhc_wiht_tpyo@{u}Zbigniew Jędrzejewski-Szmek, Apr 14, 2012
  21. 4/5 Be more specific if upstream branch is not trackedZbigniew Jędrzejewski-Szmek, Apr 14, 2012
  22. 5/5 i18n: mark @{upstream} error messages for translationZbigniew Jędrzejewski-Szmek, Apr 14, 2012
  23. Jeff KingApr 14, 2012
  24. 5/5 i18n: mark @{upstream} error messages for translationZbigniew Jędrzejewski-Szmek, Apr 11, 2012

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.