Andrew's git
/
gitweb.git
/ diff
summary
|
log
|
commit
| diff |
tree
commit
grep
author
committer
pickaxe
?
re
fetch/clone: check return status from ls-remote
author
Junio C Hamano
<junkio@cox.net>
Mon, 10 Jul 2006 10:34:34 +0000
(
03:34
-0700)
committer
Junio C Hamano
<junkio@cox.net>
Fri, 14 Jul 2006 06:10:21 +0000
(23:10 -0700)
Some callers of ls-remote did not check its return status.
git-clone.sh
patch
|
blob
|
history
git-fetch.sh
patch
|
blob
|
history
raw
|
patch
|
inline
| side by side (parent:
4b7ce6e
)
diff --git
a/git-clone.sh
b/git-clone.sh
index 036880388370a955deba19da1194600a420baef4..a92b22a13d6b2932a8d816a8845d791c2f0e36d1 100755
(executable)
--- a/
git-clone.sh
+++ b/
git-clone.sh
@@
-266,7
+266,7
@@
yes,yes)
echo "$repo/objects" >> "$GIT_DIR/objects/info/alternates"
;;
esac
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
;;
*)
case "$repo" in
@@
-296,7
+296,7
@@
yes,yes)
done
rm -f "$GIT_DIR/TMP_ALT"
fi
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@@"
;;
http://*)
if test -z "@@NO_CURL@@"
diff --git
a/git-fetch.sh
b/git-fetch.sh
index ff1769952b704d3ee3123395274da76e8f09a373..0c7a11d5658e29dcf1036afb4db4020226b8e033 100755
(executable)
--- a/
git-fetch.sh
+++ b/
git-fetch.sh
@@
-223,9
+223,16
@@
reflist=$(get_remote_refs_for_fetch "$@")
if test "$tags"
then
taglist=`IFS=" " &&
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
while read sha1 name
do
+ case "$sha1" in
+ fail)
+ exit 1
+ esac
case "$name" in
*^*) continue ;;
esac
case "$name" in
*^*) continue ;;
esac
@@
-235,7
+242,7
@@
then
else
echo >&2 "warning: tag ${name} ignored"
fi
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.
if test "$#" -gt 1
then
# remote URL plus explicit refspecs; we need to merge them.