rebase -i: make post-rewrite work for 'edit'
The post-rewrite support, in the form of the call to 'record_in_rewritten', was hidden in the arm where we have to record a new commit for the user. This meant that it was never invoked in the case where the user has already amended the commit by herself. [The test is designed to exercise both arms of the 'if' in question.] Furthermore, recording the stopped-sha (the SHA1 of the commit before the editing) suffered from a cut&paste error from die_with_patch and used the wrong variable, hence it never recorded anything. Noticed by Junio. Signed-off-by: Thomas Rast <trast@student.ethz.ch> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:

committed by
Junio C Hamano

parent
faf752693a
commit
0acb62f202
@ -484,7 +484,7 @@ do_next () {
|
||||
mark_action_done
|
||||
pick_one $sha1 ||
|
||||
die_with_patch $sha1 "Could not apply $sha1... $rest"
|
||||
echo "$1" > "$DOTEST"/stopped-sha
|
||||
echo "$sha1" > "$DOTEST"/stopped-sha
|
||||
make_patch $sha1
|
||||
git rev-parse --verify HEAD > "$AMEND"
|
||||
warn "Stopped at $sha1... $rest"
|
||||
@ -732,9 +732,10 @@ first and then run 'git rebase --continue' again."
|
||||
test -n "$amend" && git reset --soft $amend
|
||||
die "Could not commit staged changes."
|
||||
}
|
||||
record_in_rewritten "$(cat "$DOTEST"/stopped-sha)"
|
||||
fi
|
||||
|
||||
record_in_rewritten "$(cat "$DOTEST"/stopped-sha)"
|
||||
|
||||
require_clean_work_tree
|
||||
do_rest
|
||||
;;
|
||||
|
Reference in New Issue
Block a user