Siddharth Kannan <kannan.siddharth12@xxxxxxxxx> writes: > The callchain for handling each argument contains the function > revision.c:get_sha1 where the shorthand for "-" ~ "@{-1}" has already been > implemented in a previous patch; the complete callchain leading to that > function is: > > 1. merge.c:collect_parents > 2. commit.c:get_merge_parent : this function calls revision.c:get_sha1 > > This patch also adds a test for checking that the shorthand works properly This breaks "git merge". > +test_expect_success 'merge - should work' ' > + git checkout testing-2 && > + git merge - && > + git rev-parse HEAD HEAD^^ | sort >actual && > + git rev-parse master testing-1 | sort >expect && > + test_cmp expect actual This test is not sufficient to catch a regression I seem to be seeing. $ git checkout side $ git checkout pu $ git merge - used to say "Merge branch 'side' into pu". With this series merged, I seem to be getting "Merge commit '-' into pu".