On Sun, Apr 15, 2012 at 11:39:35AM +0200, Clemens Buchacher wrote: > On Fri, Apr 13, 2012 at 02:45:06PM -0400, Neil Horman wrote: > > > > +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 > > + } > > +' > > You don't need the braces. The same below. > Ack > > + > > +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^ > > + } > > +' > > And the expected result is that the HEAD commit is not removed, right? > You should check for that as well. > > Also, please checkout empty-branch2^0 first, in order to make the test > independent of its predecessor. > Not sure I follow what your saying here. The expected result with both of these tests is that a new commit is created, referencing the current HEAD as the new HEAD's parent. We could check that the current HEAD is note removed (ostensibly by recoding the value of the current head and comparing it to HEAD^ after the cherry pick, but that seems like expected behavior for any command that creates a new commit, yet we don't check that anywhere else. Why is here different? Or do you mean something else? As for the checkout of empty-branch2^0, whats the purpose? I'm just going to checkout master right after that, making it moot. The purpose of the test is to apply a commit that is already in the working tree's history, ensuring that it resolves to an empty commit. Theres nothing really dependent on the prior test there. If we edit the tests significantly, the contents of what that commit is may change, but thats not overly relevant, as the result will still be the same (an empty commit). Neil -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html