t5500: add test for fetching with an unknown 'shallow'
authorMichael Heemskerk <mheemskerk@atlassian.com>
Thu, 2 May 2013 14:56:07 +0000 (00:56 +1000)
committerJunio C Hamano <gitster@pobox.com>
Thu, 2 May 2013 17:05:52 +0000 (10:05 -0700)
When the client sends a 'shallow' line for an object that the server does
not have, the server should just ignore it and let the client keep that
unknown shallow boundary.

Signed-off-by: Michael Heemskerk <mheemskerk@atlassian.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t5500-fetch-pack.sh
index d574085696e81522669119c9b7480ba4c682c968..6133d9ed13804d1cda4044e906ada1065fbad4a6 100755 (executable)
@@ -373,6 +373,20 @@ test_expect_success 'clone shallow with packed refs' '
        test_cmp count8.expected count8.actual
 '
 
+test_expect_success 'fetch in shallow repo unreachable shallow objects' '
+       (
+               git clone --bare --branch B --single-branch "file://$(pwd)/." no-reflog &&
+               git clone --depth 1 "file://$(pwd)/no-reflog" shallow9 &&
+               cd no-reflog &&
+               git tag -d TAGB1 TAGB2 &&
+               git update-ref refs/heads/B B~~ &&
+               git gc --prune=now &&
+               cd ../shallow9 &&
+               git fetch origin &&
+               git fsck --no-dangling
+       )
+'
+
 test_expect_success 'setup tests for the --stdin parameter' '
        for head in C D E F
        do