| #!/bin/sh |
| |
| test_description='git svn fetch deleted tag' |
| |
| GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME=main |
| export GIT_TEST_DEFAULT_INITIAL_BRANCH_NAME |
| |
| . ./lib-git-svn.sh |
| |
| test_expect_success 'setup svn repo' ' |
| mkdir -p import/trunk/subdir && |
| mkdir -p import/branches && |
| mkdir -p import/tags && |
| echo "base" >import/trunk/subdir/file && |
| svn_cmd import -m "import for git svn" import "$svnrepo" && |
| rm -rf import && |
| |
| svn_cmd mkdir -m "create mybranch directory" "$svnrepo/branches/mybranch" && |
| svn_cmd cp -m "create branch mybranch" "$svnrepo/trunk" "$svnrepo/branches/mybranch/trunk" && |
| |
| svn_cmd co "$svnrepo/trunk" svn_project && |
| (cd svn_project && |
| echo "trunk change" >>subdir/file && |
| svn_cmd ci -m "trunk change" subdir/file && |
| |
| svn_cmd switch "$svnrepo/branches/mybranch/trunk" && |
| echo "branch change" >>subdir/file && |
| svn_cmd ci -m "branch change" subdir/file |
| ) && |
| |
| svn_cmd cp -m "create mytag attempt 1" -r5 "$svnrepo/trunk/subdir" "$svnrepo/tags/mytag" && |
| svn_cmd rm -m "delete mytag attempt 1" "$svnrepo/tags/mytag" && |
| svn_cmd cp -m "create mytag attempt 2" -r5 "$svnrepo/branches/mybranch/trunk/subdir" "$svnrepo/tags/mytag" |
| ' |
| |
| test_expect_success 'fetch deleted tags from same revision with checksum error' ' |
| git svn init --stdlayout "$svnrepo" git_project && |
| cd git_project && |
| git svn fetch && |
| |
| git diff --exit-code origin/mybranch:trunk/subdir/file origin/tags/mytag:file && |
| git diff --exit-code main:subdir/file origin/tags/mytag^:file |
| ' |
| |
| test_done |