From d9bffc08fd2cec626e3a390fa4cc47587a8c7f9e Mon Sep 17 00:00:00 2001 From: Michal Rokos Date: Sat, 8 Jul 2006 17:32:04 +0200 Subject: Using 'perl' in *.sh Some GIT's shell script are using bare 'perl' for perl invocation. Use @@PERL@@ symbol and replace it with PERL_PATH_SQ everywhere. Signed-off-by: Michal Rokos Signed-off-by: Junio C Hamano --- git-clone.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'git-clone.sh') diff --git a/git-clone.sh b/git-clone.sh index 6a14b25911..0368803883 100755 --- a/git-clone.sh +++ b/git-clone.sh @@ -324,7 +324,7 @@ test -d "$GIT_DIR/refs/reference-tmp" && rm -fr "$GIT_DIR/refs/reference-tmp" if test -f "$GIT_DIR/CLONE_HEAD" then # Read git-fetch-pack -k output and store the remote branches. - perl -e "$copy_refs" "$GIT_DIR" "$use_separate_remote" "$origin" + @@PERL@@ -e "$copy_refs" "$GIT_DIR" "$use_separate_remote" "$origin" fi cd "$D" || exit -- cgit v1.3 From 57a39690b936c003662b6710241732b980e58790 Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Mon, 10 Jul 2006 03:34:34 -0700 Subject: fetch/clone: check return status from ls-remote Some callers of ls-remote did not check its return status. --- git-clone.sh | 4 ++-- git-fetch.sh | 11 +++++++++-- 2 files changed, 11 insertions(+), 4 deletions(-) (limited to 'git-clone.sh') diff --git a/git-clone.sh b/git-clone.sh index 0368803883..a92b22a13d 100755 --- a/git-clone.sh +++ b/git-clone.sh @@ -266,7 +266,7 @@ yes,yes) echo "$repo/objects" >> "$GIT_DIR/objects/info/alternates" ;; esac - git-ls-remote "$repo" >"$GIT_DIR/CLONE_HEAD" + git-ls-remote "$repo" >"$GIT_DIR/CLONE_HEAD" || exit 1 ;; *) case "$repo" in @@ -296,7 +296,7 @@ yes,yes) done rm -f "$GIT_DIR/TMP_ALT" fi - git-ls-remote "$repo" >"$GIT_DIR/CLONE_HEAD" + git-ls-remote "$repo" >"$GIT_DIR/CLONE_HEAD" || exit 1 ;; http://*) if test -z "@@NO_CURL@@" diff --git a/git-fetch.sh b/git-fetch.sh index ff1769952b..0c7a11d565 100755 --- a/git-fetch.sh +++ b/git-fetch.sh @@ -223,9 +223,16 @@ reflist=$(get_remote_refs_for_fetch "$@") if test "$tags" then taglist=`IFS=" " && - git-ls-remote $upload_pack --tags "$remote" | + ( + git-ls-remote $upload_pack --tags "$remote" || + echo fail ouch + ) | while read sha1 name do + case "$sha1" in + fail) + exit 1 + esac case "$name" in *^*) continue ;; esac @@ -235,7 +242,7 @@ then else echo >&2 "warning: tag ${name} ignored" fi - done` + done` || exit if test "$#" -gt 1 then # remote URL plus explicit refspecs; we need to merge them. -- cgit v1.3 From 6ebdee5af47df0c64354e452419015a694c25f5f Mon Sep 17 00:00:00 2001 From: Ramsay Allan Jones Date: Sat, 29 Jul 2006 17:12:34 +0100 Subject: Ensure git-clone exits with error if perl script fails. This helps tests 5400,5600,5700,5710 "fail correctly" rather than give some false positives. Also ensure cleanup actions in exit trap work correctly even if user has alias rm='rm -i'. Signed-off-by: Ramsay Allan Jones Signed-off-by: Junio C Hamano --- git-clone.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'git-clone.sh') diff --git a/git-clone.sh b/git-clone.sh index a92b22a13d..acc7a51b97 100755 --- a/git-clone.sh +++ b/git-clone.sh @@ -205,7 +205,7 @@ dir="$2" [ -e "$dir" ] && echo "$dir already exists." && usage mkdir -p "$dir" && D=$(cd "$dir" && pwd) && -trap 'err=$?; cd ..; rm -r "$D"; exit $err' 0 +trap 'err=$?; cd ..; rm -rf "$D"; exit $err' 0 case "$bare" in yes) GIT_DIR="$D" ;; @@ -324,7 +324,8 @@ test -d "$GIT_DIR/refs/reference-tmp" && rm -fr "$GIT_DIR/refs/reference-tmp" if test -f "$GIT_DIR/CLONE_HEAD" then # Read git-fetch-pack -k output and store the remote branches. - @@PERL@@ -e "$copy_refs" "$GIT_DIR" "$use_separate_remote" "$origin" + @@PERL@@ -e "$copy_refs" "$GIT_DIR" "$use_separate_remote" "$origin" || + exit fi cd "$D" || exit -- cgit v1.3 From b20805af603380c3abfc1b2e7859d28185e397f1 Mon Sep 17 00:00:00 2001 From: Michael Krelin Date: Mon, 7 Aug 2006 17:10:21 +0200 Subject: handle https:// protocol in git-clone Signed-off-by: Junio C Hamano --- git-clone.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'git-clone.sh') diff --git a/git-clone.sh b/git-clone.sh index acc7a51b97..7060bdab01 100755 --- a/git-clone.sh +++ b/git-clone.sh @@ -298,7 +298,7 @@ yes,yes) fi git-ls-remote "$repo" >"$GIT_DIR/CLONE_HEAD" || exit 1 ;; - http://*) + https://*|http://*) if test -z "@@NO_CURL@@" then clone_dumb_http "$repo" "$D" -- cgit v1.3