Jeff King [off-list ref] writes:
quoted
You should instead tell git that HEAD^ is good, since that is what git
asked you to test.
Another alternative is to use "git cherry-pick -n" to create a working
tree state that you can test, but leave HEAD at the original commit.
Then "git bisect good" does the right thing.
I was about to say the same, and "bisect good" at that point does
mark the correct commit, but does it always do the right thing? I
think the procedure must be
git cherry-pick -n $the_fixup
test
git reset --hard
git bisect good (or bad)
for it to always work, which is not all that different from
git cherry-pick $the_fixup
test
git reset --hard HEAD^
git bisect good (or bad)