aboutsummaryrefslogtreecommitdiff
path: root/git-clone.sh
diff options
context:
space:
mode:
authorJunio C Hamano <junkio@cox.net>2005-11-11 22:37:38 -0800
committerJunio C Hamano <junkio@cox.net>2005-11-11 22:37:38 -0800
commitf7a2eb735982e921ae4379f1dcf5f7a023610393 (patch)
tree26fe2c59a8fed68a531e7b855a495f52198162a2 /git-clone.sh
parent23ea3e201cea0deea909569e08e950a9ec2345f7 (diff)
parent7765e7ebda7e273bca34e87110be899447068b58 (diff)
downloadgit-1.0rc1.tar.gz
git-1.0rc1.tar.xz
GIT 0.99.9hv1.0rc1v0.99.9h
This is GIT 1.0-rc1 in disguise. It is plausible that relatively new parts of the system still need tweaking and fixing, but that is why it is not 1.0 but rc ;-). Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'git-clone.sh')
-rwxr-xr-xgit-clone.sh11
1 files changed, 7 insertions, 4 deletions
diff --git a/git-clone.sh b/git-clone.sh
index 4fdd65251..f99e0adf8 100755
--- a/git-clone.sh
+++ b/git-clone.sh
@@ -23,7 +23,7 @@ fi
http_fetch () {
# $1 = Remote, $2 = Local
- curl -nsf $curl_extra_args "$1" >"$2"
+ curl -nsfL $curl_extra_args "$1" >"$2"
}
clone_dumb_http () {
@@ -96,7 +96,10 @@ if base=$(get_repo_base "$repo"); then
fi
dir="$2"
-mkdir "$dir" &&
+# Try using "humanish" part of source repo if user didn't specify one
+[ -z "$dir" ] && dir=$(echo "$repo" | sed -e 's|/$||' -e 's|:*/*\.git$||' -e 's|.*/||g')
+[ -e "$dir" ] && $(echo "$dir already exists."; usage)
+mkdir -p "$dir" &&
D=$(
(cd "$dir" && git-init-db && pwd)
) &&
@@ -163,7 +166,7 @@ yes,yes)
rm -f "$D/.git/TMP_ALT"
if test -f "$D/.git/TMP_ALT"
then
- ( cd $D &&
+ ( cd "$D" &&
. git-parse-remote &&
resolve_alternates "$repo" <"./.git/TMP_ALT" ) |
while read alt
@@ -191,7 +194,7 @@ yes,yes)
;;
esac
-cd $D || exit
+cd "$D" || exit
if test -f ".git/HEAD"
then