summaryrefslogtreecommitdiff
path: root/remote-curl.c
diff options
context:
space:
mode:
authorJeff King <peff@peff.net>2013-04-05 18:20:43 -0400
committerJunio C Hamano <gitster@pobox.com>2013-04-06 18:56:43 -0700
commitcfa0f4040dd1885fbcdd3d306c1defe22d0fee00 (patch)
treeef8e17b203a16b3e578b80846f41fc39921f4e55 /remote-curl.c
parent110bcdc3d0ea9f0042f24a4c0319dede36dfe7f9 (diff)
downloadgit-cfa0f4040dd1885fbcdd3d306c1defe22d0fee00.tar.gz
remote-curl: always show friendlier 404 message
When we get an http 404 trying to get the initial list of refs from the server, we try to be helpful and remind the user that update-server-info may need to be run. This looks like: $ git clone https://github.com/non/existent Cloning into 'existent'... fatal: https://github.com/non/existent/info/refs?service=git-upload-pack not found: did you run git update-server-info on the server? Suggesting update-server-info may be a good suggestion for users who are in control of the server repo and who are planning to set up dumb http. But for users of smart http, and especially users who are not in control of the server repo, the advice is useless and confusing. Since most people are expected to use smart http these days, it does not make sense to keep the update-server-info hint. We not only drop the mention of update-server-info, but also show only the main repo URL, not the full "info/refs" and service parameter. These elements may be useful for debugging a broken server configuration, but in the majority of cases, users are not fetching from their own repositories, but rather from other people's repositories; they have neither the power nor interest to fix a broken configuration, and the extra components just make the message more confusing. Users who do want to debug can and should use GIT_CURL_VERBOSE to get more complete information on the actual URLs visited. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'remote-curl.c')
-rw-r--r--remote-curl.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/remote-curl.c b/remote-curl.c
index 083efdf776..5d9f9618b4 100644
--- a/remote-curl.c
+++ b/remote-curl.c
@@ -209,10 +209,8 @@ static struct discovery* discover_refs(const char *service, int for_push)
case HTTP_OK:
break;
case HTTP_MISSING_TARGET:
- if (!show_http_message(&type, &buffer))
- die("repository '%s' not found", url);
- die("%s not found: did you run git update-server-info on the"
- " server?", refs_url);
+ show_http_message(&type, &buffer);
+ die("repository '%s' not found", url);
case HTTP_NOAUTH:
show_http_message(&type, &buffer);
die("Authentication failed");