diff options
author | Junio C Hamano <gitster@pobox.com> | 2018-01-21 21:12:37 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2018-01-21 21:12:37 -0800 |
commit | ea7b5de1c1187294d3d4dca93b129e049ca7ca76 (patch) | |
tree | f41b6fd4758d9aa51f4d6f795b071ba9b469e383 | |
parent | Git 2.16 (diff) | |
parent | t5601-clone: test case-conflicting files on case-insensitive filesystem (diff) | |
download | tgif-ea7b5de1c1187294d3d4dca93b129e049ca7ca76.tar.xz |
Merge branch 'bc/hash-algo' into maint
* bc/hash-algo:
t5601-clone: test case-conflicting files on case-insensitive filesystem
repository: pre-initialize hash algo pointer
-rw-r--r-- | repository.c | 2 | ||||
-rwxr-xr-x | t/t5601-clone.sh | 17 |
2 files changed, 18 insertions, 1 deletions
diff --git a/repository.c b/repository.c index 998413b8bb..f66fcb1342 100644 --- a/repository.c +++ b/repository.c @@ -5,7 +5,7 @@ /* The main repository */ static struct repository the_repo = { - NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, &the_index, NULL, 0, 0 + NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, &the_index, &hash_algos[GIT_HASH_SHA1], 0, 0 }; struct repository *the_repository = &the_repo; diff --git a/t/t5601-clone.sh b/t/t5601-clone.sh index 0f895478f0..8c437bf872 100755 --- a/t/t5601-clone.sh +++ b/t/t5601-clone.sh @@ -611,4 +611,21 @@ test_expect_success 'GIT_TRACE_PACKFILE produces a usable pack' ' git -C replay.git index-pack -v --stdin <tmp.pack ' +hex2oct () { + perl -ne 'printf "\\%03o", hex for /../g' +} + +test_expect_success 'clone on case-insensitive fs' ' + git init icasefs && + ( + cd icasefs + o=$(git hash-object -w --stdin </dev/null | hex2oct) && + t=$(printf "100644 X\0${o}100644 x\0${o}" | + git hash-object -w -t tree --stdin) && + c=$(git commit-tree -m bogus $t) && + git update-ref refs/heads/bogus $c && + git clone -b bogus . bogus + ) +' + test_done |