summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGerrit Pape <pape@smarden.org>2007-09-13 11:36:22 (GMT)
committerJunio C Hamano <gitster@pobox.com>2007-09-14 05:39:22 (GMT)
commitf28dd4774d4723e8251817e910dbdc5507282113 (patch)
tree21fceb04d7ff3880c69a94b9e0d2d721623497b4
parentc32da692de332d3c9a0b283066e3786af00f4931 (diff)
downloadgit-f28dd4774d4723e8251817e910dbdc5507282113.zip
git-f28dd4774d4723e8251817e910dbdc5507282113.tar.gz
git-f28dd4774d4723e8251817e910dbdc5507282113.tar.bz2
git-clone: improve error message if curl program is missing or not executable
If the curl program is not available (or not executable), and git clone is started to clone a repository through http, this is the output Initialized empty Git repository in /tmp/puppet/.git/ /usr/bin/git-clone: line 37: curl: command not found Cannot get remote repository information. Perhaps git-update-server-info needs to be run there? This patch improves the error message by checking the return code when running curl to exit immediately if it's 126 or 127; the error output now is Initialized empty Git repository in /tmp/puppet/.git/ /usr/bin/git-clone: line 37: curl: command not found Adrian Bridgett noticed this and reported through http://bugs.debian.org/440976 Signed-off-by: Gerrit Pape <pape@smarden.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-xgit-clone.sh6
1 files changed, 5 insertions, 1 deletions
diff --git a/git-clone.sh b/git-clone.sh
index 18003ab..5e582fe 100755
--- a/git-clone.sh
+++ b/git-clone.sh
@@ -34,7 +34,11 @@ fi
http_fetch () {
# $1 = Remote, $2 = Local
- curl -nsfL $curl_extra_args "$1" >"$2"
+ curl -nsfL $curl_extra_args "$1" >"$2" ||
+ case $? in
+ 126|127) exit ;;
+ *) return $? ;;
+ esac
}
clone_dumb_http () {