Code

t6031: Add a testcase covering multiple renames across a D/F conflict
authorElijah Newren <newren@gmail.com>
Tue, 17 Aug 2010 23:53:18 +0000 (17:53 -0600)
committerJunio C Hamano <gitster@pobox.com>
Wed, 18 Aug 2010 19:08:05 +0000 (12:08 -0700)
Signed-off-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t6031-merge-recursive.sh

index 8a3304fb0b5901fb02435d3b77c3d049404f4e25..c50ee295a7bc0e8df74aa5913999b5900a07f2f8 100755 (executable)
@@ -57,4 +57,35 @@ test_expect_success FILEMODE 'verify executable bit on file' '
        test -x file2
 '
 
+test_expect_failure 'merging with triple rename across D/F conflict' '
+       git reset --hard HEAD &&
+       git checkout -b main &&
+       git rm -rf . &&
+
+       echo "just a file" >sub1 &&
+       mkdir -p sub2 &&
+       echo content1 >sub2/file1 &&
+       echo content2 >sub2/file2 &&
+       echo content3 >sub2/file3 &&
+       mkdir simple &&
+       echo base >simple/bar &&
+       git add -A &&
+       test_tick &&
+       git commit -m base &&
+
+       git checkout -b other &&
+       echo more >>simple/bar &&
+       test_tick &&
+       git commit -a -m changesimplefile &&
+
+       git checkout main &&
+       git rm sub1 &&
+       git mv sub2 sub1 &&
+       test_tick &&
+       git commit -m changefiletodir &&
+
+       test_tick &&
+       git merge other
+'
+
 test_done