diff options
author | Jonathan Nieder <jrnieder@gmail.com> | 2010-10-18 05:44:04 +0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2010-10-20 09:55:15 +0400 |
commit | 971728c853f8fcdfcecd768c74010965c383c431 (patch) | |
tree | 5dacff43171172c8808b326376fd178789cce616 /t/t9300-fast-import.sh | |
parent | 3421578393a5983db6fa76a203c9dee95c74801d (diff) |
t9300 (fast-import): another test for the "replace root" feature
Another test for the replace root feature. One can imagine an
implementation for which R "some/subdir" "" would free some state
associated to the subdir and leave fast-import confused.
Luckily, git's is not such an implementation.
While at it, change the previous test to use C "some/subdir" ""
instead of R (i.e., test both syntaxes).
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t9300-fast-import.sh')
-rwxr-xr-x | t/t9300-fast-import.sh | 43 |
1 files changed, 42 insertions, 1 deletions
diff --git a/t/t9300-fast-import.sh b/t/t9300-fast-import.sh index ce094577e0..dd90a0933e 100755 --- a/t/t9300-fast-import.sh +++ b/t/t9300-fast-import.sh @@ -990,11 +990,52 @@ test_expect_success \ COMMIT M 040000 $branch "" - R "newdir" "" + C "newdir" "" INPUT_END git fast-import <input && git diff --exit-code branch:newdir N9' +test_expect_success \ + 'N: modify subtree, extract it, and modify again' \ + 'echo hello >expect.baz && + echo hello, world >expect.qux && + git fast-import <<-SETUP_END && + commit refs/heads/N10 + committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE + data <<COMMIT + hello, tree + COMMIT + + deleteall + M 644 inline foo/bar/baz + data <<EOF + hello + EOF + SETUP_END + + tree=$(git rev-parse --verify N10:) && + git fast-import <<-INPUT_END && + commit refs/heads/N11 + committer $GIT_COMMITTER_NAME <$GIT_COMMITTER_EMAIL> $GIT_COMMITTER_DATE + data <<COMMIT + copy to root by id and modify + COMMIT + + M 040000 $tree "" + M 100644 inline foo/bar/qux + data <<EOF + hello, world + EOF + R "foo" "" + C "bar/qux" "bar/quux" + INPUT_END + git show N11:bar/baz >actual.baz && + git show N11:bar/qux >actual.qux && + git show N11:bar/quux >actual.quux && + test_cmp expect.baz actual.baz && + test_cmp expect.qux actual.qux && + test_cmp expect.qux actual.quux' + ### ### series O ### |