reset: pass real rev name to add--interactive
authorJeff King <peff@peff.net>
Fri, 25 Oct 2013 06:54:06 +0000 (02:54 -0400)
committerJunio C Hamano <gitster@pobox.com>
Fri, 25 Oct 2013 21:54:18 +0000 (14:54 -0700)
commitb3e9ce13320f62e07fcb88a5cdf3c0462c195e95
tree435fdf70b5ae07e3ec5bde5fc984a1fd7a24ece9
parent954312a3ff76652a954b730ae69a031f98293a99
reset: pass real rev name to add--interactive

The add--interactive --patch mode adjusts the UI based on
whether we are pulling changes from HEAD or elsewhere (in
the former case it asks to unstage the reverse hunk, rather
than apply the forward hunk).

Commit 166ec2e taught reset to work on an unborn branch, but
in doing so, switched to always providing add--interactive
with the sha1 rather than the symbolic name. This meant we
always used the "apply" interface, even for "git reset -p
HEAD".

We can fix this by passing the symbolic name to
add--interactive.  Since it understands unborn branches
these days, we do not even have to cover this special case
ourselves; we can simply pass HEAD.

The tests in t7105 now check that the right interface is
used in each circumstance (and notice the regression from
166ec2e we are fixing). The test in t7106 checks that we
get this right for the unborn case, too (not a regression,
since it didn't work at all before, but a nice improvement).

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/reset.c
t/t7105-reset-patch.sh
t/t7106-reset-unborn-branch.sh