summaryrefslogtreecommitdiff
path: root/t/t5701-clone-local.sh
diff options
context:
space:
mode:
authorAlex Riesen <raa.lkml@gmail.com>2007-06-06 23:39:05 (GMT)
committerJunio C Hamano <gitster@pobox.com>2007-06-06 23:40:03 (GMT)
commitdefe13a24a254f19596b8008095829068e742f9c (patch)
tree2462c5e1b901c388613afc96c954fff7c67147ad /t/t5701-clone-local.sh
parent23fcdc79713c47a6a0d50762b9311c9933a60d3f (diff)
downloadgit-defe13a24a254f19596b8008095829068e742f9c.zip
git-defe13a24a254f19596b8008095829068e742f9c.tar.gz
git-defe13a24a254f19596b8008095829068e742f9c.tar.bz2
Fix clone to setup the origin if its name ends with .git
The problem is visible when cloning a local repo. The cloned repository will have the origin url setup incorrectly: the origin name will be copied verbatim in origin url of the cloned repository. Normally, the name is to be expanded into absolute path. Signed-off-by: Alex Riesen <raa.lkml@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t5701-clone-local.sh')
-rwxr-xr-xt/t5701-clone-local.sh46
1 files changed, 46 insertions, 0 deletions
diff --git a/t/t5701-clone-local.sh b/t/t5701-clone-local.sh
new file mode 100755
index 0000000..b093327
--- /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