diff options
author | 2007-06-12 20:48:31 -0700 | |
---|---|---|
committer | 2007-06-12 20:48:31 -0700 | |
commit | 4f01d0f92db5cb38aaaab83adb50557beb35fb91 (patch) | |
tree | 37dd4b289f4a1a4923557a942f86495ac24f11ae | |
parent | Merge branch 'sv/objfixes' into maint (diff) | |
parent | Fix clone to setup the origin if its name ends with .git (diff) | |
download | tgif-4f01d0f92db5cb38aaaab83adb50557beb35fb91.tar.xz |
Merge branch 'ar/clone' into maint
* ar/clone:
Fix clone to setup the origin if its name ends with .git
-rwxr-xr-x | git-clone.sh | 2 | ||||
-rwxr-xr-x | t/t5701-clone-local.sh | 46 |
2 files changed, 47 insertions, 1 deletions
diff --git a/git-clone.sh b/git-clone.sh index fdd354f2da..d45618d9af 100755 --- a/git-clone.sh +++ b/git-clone.sh @@ -20,7 +20,7 @@ usage() { get_repo_base() { ( cd "`/bin/pwd`" && - cd "$1" && + cd "$1" || cd "$1.git" && { cd .git pwd diff --git a/t/t5701-clone-local.sh b/t/t5701-clone-local.sh new file mode 100755 index 0000000000..b0933274db --- /dev/null +++ b/t/t5701-clone-local.sh @@ -0,0 +1,46 @@ +#!/bin/sh + +test_description='test local clone' +. ./test-lib.sh + +D=`pwd` + +test_expect_success 'preparing origin repository' ' + : >file && git add . && git commit -m1 && + git clone --bare . a.git && + git clone --bare . x +' + +test_expect_success 'local clone without .git suffix' ' + cd "$D" && + git clone -l -s a b && + cd b && + git fetch +' + +test_expect_success 'local clone with .git suffix' ' + cd "$D" && + git clone -l -s a.git c && + cd c && + git fetch +' + +test_expect_success 'local clone from x' ' + cd "$D" && + git clone -l -s x y && + cd y && + git fetch +' + +test_expect_success 'local clone from x.git that does not exist' ' + cd "$D" && + if git clone -l -s x.git z + then + echo "Oops, should have failed" + false + else + echo happy + fi +' + +test_done |