From: Eric Sunshine Date: Thu, 21 May 2015 21:12:35 GMT Subject: Re: [PATCH 1/2] rebase -i: demonstrate incorrect behavior of post-rewrite hook with exec Message-ID: In-Reply-To: <1432231982-31314-2-git-send-email-Matthieu.Moy@imag.fr> On Thu, May 21, 2015 at 2:13 PM, Matthieu Moy wrote: > The 'exec' command is sending the current commit to stopped-sha, which is > supposed to contain the original commit (before rebase). As a result, if > an 'exec' command fails, the next 'git rebase --continue' will send the > current commit as to the post-rewrite hook. > [...] > > Signed-off-by: Matthieu Moy > --- > diff --git a/t/t5407-post-rewrite-hook.sh b/t/t5407-post-rewrite-hook.sh > index ea2e0d4..ecef820 100755 > --- a/t/t5407-post-rewrite-hook.sh > +++ b/t/t5407-post-rewrite-hook.sh > @@ -212,4 +212,21 @@ EOF > verify_hook_input > ' > > +test_expect_failure 'git rebase -i (exec)' ' > + git reset --hard D && > + clear_hook_input && > + FAKE_LINES="edit 1 exec_false 2" git rebase -i B Broken &&-chain. > + echo something >bar && > + git add bar && > + # Fail because of exec false > + test_must_fail git rebase --continue && > + git rebase --continue && > + echo rebase >expected.args && > + cat >expected.data < +$(git rev-parse C) $(git rev-parse HEAD^) > +$(git rev-parse D) $(git rev-parse HEAD) > +EOF > + verify_hook_input > +' > + > test_done > -- > 2.4.1.171.g060e6ae.dirty