apply: register conflicted stages to the index
[gitweb.git] / t / t3505-cherry-pick-empty.sh
index c10b28cf5731705b437793a58f5acd6c605ad579..92f00cdf84993da995f074efa12344c26b627d67 100755 (executable)
@@ -18,7 +18,12 @@ test_expect_success setup '
        echo third >> file1 &&
        git add file1 &&
        test_tick &&
-       git commit --allow-empty-message -m ""
+       git commit --allow-empty-message -m "" &&
+
+       git checkout master &&
+       git checkout -b empty-branch2 &&
+       test_tick &&
+       git commit --allow-empty -m "empty"
 
 '
 
@@ -48,4 +53,22 @@ test_expect_success 'index lockfile was removed' '
 
 '
 
+test_expect_success 'cherry pick an empty non-ff commit without --allow-empty' '
+       git checkout master &&
+       echo fourth >>file2 &&
+       git add file2 &&
+       git commit -m "fourth" &&
+       test_must_fail git cherry-pick empty-branch2
+'
+
+test_expect_success 'cherry pick an empty non-ff commit with --allow-empty' '
+       git checkout master &&
+       git cherry-pick --allow-empty empty-branch2
+'
+
+test_expect_success 'cherry pick with --keep-redundant-commits' '
+       git checkout master &&
+       git cherry-pick --keep-redundant-commits HEAD^
+'
+
 test_done