diff options
Diffstat (limited to 't/t9103-git-svn-tracked-directory-removed.sh')
-rwxr-xr-x | t/t9103-git-svn-tracked-directory-removed.sh | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/t/t9103-git-svn-tracked-directory-removed.sh b/t/t9103-git-svn-tracked-directory-removed.sh new file mode 100755 index 000000000000..b28271345c63 --- /dev/null +++ b/t/t9103-git-svn-tracked-directory-removed.sh @@ -0,0 +1,41 @@ +#!/bin/sh +# +# Copyright (c) 2007 Eric Wong +# + +test_description='git svn tracking removed top-level path' +. ./lib-git-svn.sh + +test_expect_success 'make history for tracking' ' + mkdir import && + mkdir import/trunk && + echo hello >> import/trunk/README && + svn_cmd import -m initial import "$svnrepo" && + rm -rf import && + svn_cmd co "$svnrepo"/trunk trunk && + echo bye bye >> trunk/README && + svn_cmd rm -m "gone" "$svnrepo"/trunk && + rm -rf trunk && + mkdir trunk && + echo "new" > trunk/FOLLOWME && + svn_cmd import -m "new trunk" trunk "$svnrepo"/trunk +' + +test_expect_success 'clone repo with git' ' + git svn clone -s "$svnrepo" x && + test_path_is_file x/FOLLOWME && + test_path_is_missing x/README +' + +test_expect_success 'make sure r2 still has old file' ' + ( + cd x && + test -n "$(git svn find-rev r1)" && + git reset --hard "$(git svn find-rev r1)" && + test_path_is_file README && + test_path_is_missing FOLLOWME && + test -z "$(git svn find-rev r2)" + ) +' + +test_done |