]> asedeno.scripts.mit.edu Git - git.git/blobdiff - t/t5601-clone.sh
Merge branch 'bd/diff-strbuf'
[git.git] / t / t5601-clone.sh
index d785b3df78e8507d81ffa03ff694846791edfc87..59c65fef286ad8d52a15c942f6975607f0347f66 100755 (executable)
@@ -31,6 +31,12 @@ test_expect_success 'clone with excess parameters (2)' '
 
 '
 
+test_expect_success 'output from clone' '
+       rm -fr dst &&
+       git clone -n "file://$(pwd)/src" dst >output &&
+       test $(grep Initialized output | wc -l) = 1
+'
+
 test_expect_success 'clone does not keep pack' '
 
        rm -fr dst &&
@@ -70,4 +76,35 @@ test_expect_success 'clone creates intermediate directories for bare repo' '
 
 '
 
+test_expect_success 'clone --mirror' '
+
+       git clone --mirror src mirror &&
+       test -f mirror/HEAD &&
+       test ! -f mirror/file &&
+       FETCH="$(cd mirror && git config remote.origin.fetch)" &&
+       test "+refs/*:refs/*" = "$FETCH" &&
+       MIRROR="$(cd mirror && git config --bool remote.origin.mirror)" &&
+       test "$MIRROR" = true
+
+'
+
+test_expect_success 'clone --bare names the local repository <name>.git' '
+
+       git clone --bare src &&
+       test -d src.git
+
+'
+
+test_expect_success 'clone --mirror does not repeat tags' '
+
+       (cd src &&
+        git tag some-tag HEAD) &&
+       git clone --mirror src mirror2 &&
+       (cd mirror2 &&
+        git show-ref 2> clone.err > clone.out) &&
+       test_must_fail grep Duplicate mirror2/clone.err &&
+       grep some-tag mirror2/clone.out
+
+'
+
 test_done