# have hardcoded some well-known objects. See the case statements below for the
# complete list.
pack_obj () {
- test_oid_init
-
case "$1" in
# empty blob
$EMPTY_BLOB)
# Compute and append pack trailer to "$1"
pack_trailer () {
- test_oid_init &&
test-tool $(test_oid algo) -b <"$1" >trailer.tmp &&
cat trailer.tmp >>"$1" &&
rm -f trailer.tmp
# the submodule repo if it doesn't exist and configures the most problematic
# settings for diff.ignoreSubmodules.
prolog () {
- test_oid_init &&
(test -d submodule_update_repo || create_lib_submodule_repo) &&
test_config_global diff.ignoreSubmodules all &&
test_config diff.ignoreSubmodules all
test_path_is_missing also-clean-atexit
"
-test_expect_success 'test_oid setup' '
- test_oid_init
-'
-
test_expect_success 'test_oid provides sane info by default' '
test_oid zero >actual &&
grep "^00*\$" actual &&
test_cmp expect actual
'
-test_oid_init
-
tree_sha1=$(git write-tree)
tree_size=$(($(test_oid rawsz) + 13))
tree_pretty_content="100644 blob $hello_sha1 hello"
}
test_expect_success setup '
- test_oid_init &&
# clone does not allow us to pass core.bigfilethreshold to
# new repos, so set core.bigfilethreshold globally
git config --global core.bigfilethreshold 200k &&
}
test_expect_success setup '
- test_oid_init &&
mkdir -p A/B &&
echo rat >C &&
echo ox >A/D &&
. ./test-lib.sh
test_expect_success setup '
- test_oid_init &&
git config gc.auto 0 &&
git config i18n.commitencoding ISO-8859-1 &&
test_commit A fileA one &&
ROOT=$(pwd)
test_expect_success 'setup' '
- test_oid_init &&
mkdir -p sub/dir work &&
cp -R .git repo.git
'
# Copy notes to remote-notes
git fetch . refs/notes/*:refs/remote-notes/origin/* &&
- test_oid_init &&
test_oid_cache <<-EOF
hash4a sha1:5e93d24084d32e1cb61f7070505b9d2530cca987
hash3a sha1:8366731eeee53787d2bdf8fc1eff7d94757e8da0
'
test_expect_success 'choking "git rm" should not let it die with cruft' '
- test_oid_init &&
git reset -q --hard &&
test_when_finished "rm -f .git/index.lock && git reset -q --hard" &&
i=0 &&
# first create a commit, so we have a valid object/type
# for the tag.
test_expect_success 'setup' '
- test_oid_init &&
echo Hello >A &&
git update-index --add A &&
git commit -m "Initial commit" &&
. "$TEST_DIRECTORY"/lib-read-tree-m-3way.sh
-test_oid_init
-
test_oid_cache <<\EOF
aa_1 sha1:ccba72ad3888a3520b39efcf780b9ee64167535d
aa_1 sha256:9febfbf18197819b2735c45291f138525d2476d59470f98239647544586ba403
. "$TEST_DIRECTORY"/diff-lib.sh
test_expect_success setup '
- test_oid_init &&
test_tick &&
test_create_repo sub &&
(
. ./test-lib.sh
test_expect_success setup '
- test_oid_init &&
cat > create-sm.patch <<EOF &&
diff --git a/dir/sm b/dir/sm
new file mode 160000
. ./test-lib.sh
test_expect_success 'setup' '
- test_oid_init &&
cat >a1 <<-\EOF &&
Some title
==========
. ./test-lib.sh
test_expect_success 'setup (import history)' '
- test_oid_init &&
git fast-import < "$TEST_DIRECTORY"/t4211/history.export &&
git reset --hard
'
test_expect_success \
'setup' \
- 'test_oid_init &&
- rm -f .git/index* &&
+ 'rm -f .git/index* &&
perl -e "print \"a\" x 4096;" > a &&
perl -e "print \"b\" x 4096;" > b &&
perl -e "print \"c\" x 4096;" > c &&
. ./test-lib.sh
test_expect_success 'setup' '
- test_oid_init &&
rawsz=$(test_oid rawsz) &&
rm -rf .git &&
git init &&
}
test_expect_success 'setup' '
- test_oid_init &&
test_oid_cache <<-EOF
oid000 sha1:1485
oid000 sha256:4222
cd "$TRASH_DIRECTORY/full" &&
git init &&
git config core.commitGraph true &&
- objdir=".git/objects" &&
- test_oid_init
+ objdir=".git/objects"
'
test_expect_success POSIXPERM 'tweak umask for modebit tests' '
}
test_expect_success 'setup' '
- test_oid_init &&
test_oid_cache <<-EOF
idxoff sha1:2999
idxoff sha256:3739
git config gc.writeCommitGraph false &&
infodir=".git/objects/info" &&
graphdir="$infodir/commit-graphs" &&
- test_oid_init &&
test_oid_cache <<-EOM
shallow sha1:1760
shallow sha256:2064
. ./test-lib.sh
test_expect_success 'setup and inject "corrupt or missing" object' '
- test_oid_init &&
echo hello >greetings &&
git add greetings &&
git commit -m greetings &&
}
test_expect_success 'setup and corrupt repository' '
- test_oid_init &&
echo file >file &&
git add file &&
git rev-parse :file &&
}
test_expect_success 'setup' '
- test_oid_init &&
HTTP_CONTENT_ENCODING="identity" &&
export HTTP_CONTENT_ENCODING &&
git config http.receivepack true &&
daemon_parent=$GIT_DAEMON_DOCUMENT_ROOT_PATH/parent
test_expect_success 'create repo to be served by git-daemon' '
- test_oid_init &&
git init "$daemon_parent" &&
test_commit -C "$daemon_parent" one
'
# \ | /
# a
test_expect_success 'setup repository' '
- test_oid_init &&
test_commit a &&
git checkout -b o/foo &&
test_commit b &&
truncate_count=20
test_expect_success 'setup' '
- test_oid_init &&
: >foo &&
git add foo &&
git config i18n.commitEncoding $test_encoding &&