From c8bae7493d2f2910b57f13ded012e86bdcfb0532 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 7 Apr 2024 16:47:53 +0200 Subject: Adding upstream version 1:2.39.2. Signed-off-by: Daniel Baumann --- t/t5305-include-tag.sh | 121 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 121 insertions(+) create mode 100755 t/t5305-include-tag.sh (limited to 't/t5305-include-tag.sh') diff --git a/t/t5305-include-tag.sh b/t/t5305-include-tag.sh new file mode 100755 index 0000000..44bd9ef --- /dev/null +++ b/t/t5305-include-tag.sh @@ -0,0 +1,121 @@ +#!/bin/sh + +test_description='git pack-object --include-tag' +GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main +export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME + +. ./test-lib.sh + +TRASH=$(pwd) + +test_expect_success setup ' + echo c >d && + git update-index --add d && + tree=$(git write-tree) && + commit=$(git commit-tree $tree sig && + echo "type commit" >>sig && + echo "tag mytag" >>sig && + echo "tagger $(git var GIT_COMMITTER_IDENT)" >>sig && + echo >>sig && + echo "our test tag" >>sig && + tag=$(git mktag obj-list +' + +test_expect_success 'pack without --include-tag' ' + packname=$(git pack-objects \ + --window=0 \ + test-no-include list.expect && + test_must_fail git -C clone.git cat-file -e $tag && + git -C clone.git rev-list --objects $commit >list.actual && + test_cmp list.expect list.actual +' + +test_expect_success 'pack with --include-tag' ' + packname=$(git pack-objects \ + --window=0 \ + --include-tag \ + test-include list.expect && + git -C clone.git rev-list --objects $tag >list.actual && + test_cmp list.expect list.actual +' + +# A tag of a tag, where the "inner" tag is not otherwise +# reachable, and a full peel points to a commit reachable from HEAD. +test_expect_success 'create hidden inner tag' ' + test_commit commit && + git tag -m inner inner HEAD && + git tag -m outer outer inner && + git tag -d inner +' + +test_expect_success 'pack explicit outer tag' ' + packname=$( + { + echo HEAD && + echo outer + } | + git pack-objects --revs test-hidden-explicit + ) +' + +test_expect_success 'unpack objects' ' + rm -rf clone.git && + git init clone.git && + git -C clone.git unpack-objects