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

[PATCH 5/9] remote-curl: consistently report repo url for http errors

From
Jeff King <peff@peff.net>
Date
Apr 5, 2013, 22:21 UTC
Message-ID
<20130405222114.GE22163@sigill.intra.peff.net>
In-Reply-To
<20130405221331.GA21209@sigill.intra.peff.net>

When we report http errors in fetching the initial ref advertisement, we show the full URL we attempted to use, including "info/refs?service=git-upload-pack". While this may be useful for debugging a broken server, it is unnecessarily verbose and confusing for most cases, in which the client user is not even the same person as the owner of the repository.

Let's just show the repository URL; debugging can happen with GIT_CURL_VERBOSE, which shows way more useful information, anyway.

At the same time, let's also make sure to mention the repository URL when we report failed authentication (previously we said only "Authentication failed"). Knowing the URL can help the user realize why authentication failed (e.g., they meant to push to remote A, not remote B).

Signed-off-by: Jeff King <peff@peff.net>
---
This is the same rationale as the latter half of the last patch; if we
take them all, I'd be happy to see them squashed together.
 remote-curl.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/remote-curl.c b/remote-curl.c
index 5d9f961..6c6714b 100644
--- a/remote-curl.c
+++ b/remote-curl.c
@@ -213,10 +213,10 @@ static struct discovery* discover_refs(const char *service, int for_push)
 		die("repository '%s' not found", url);
 	case HTTP_NOAUTH:
 		show_http_message(&type, &buffer);
-		die("Authentication failed");
+		die("Authentication failed for '%s'", url);
 	default:
 		show_http_message(&type, &buffer);
-		http_error(refs_url, http_ret);
+		http_error(url, http_ret);
 		die("HTTP request failed");
 	}
 
-- 
1.8.2.rc0.33.gd915649
Previous: Jeff KingNext: Jeff King
Message 6 of 10 in “friendlier http error messages”
  1. 0/9 friendlier http error messagesJeff King, Apr 5, 2013
  2. 1/9 http: add HTTP_KEEP_ERROR optionJeff King, Apr 5, 2013
  3. 2/9 remote-curl: show server content on http errorsJeff King, Apr 5, 2013
  4. 3/9 remote-curl: let servers override http 404 adviceJeff King, Apr 5, 2013
  5. 4/9 remote-curl: always show friendlier 404 messageJeff King, Apr 5, 2013
  6. 5/9 remote-curl: consistently report repo url for http errorsJeff King, Apr 5, 2013
  7. 6/9 http: simplify http_error helper functionJeff King, Apr 5, 2013
  8. 7/9 http: re-word http error messageJeff King, Apr 5, 2013
  9. 8/9 remote-curl: die directly with http error messagesJeff King, Apr 5, 2013
  10. 9/9 http: drop http_error functionJeff King, Apr 5, 2013

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.