Re: [PATCH] rebase -i: fixup fixup! fixup!
- From
- Andrew Pimlott <andrew@pimlott.net>
- Date
- Jun 26, 2013, 22:00 UTC
- Message-ID
- <1372283778-sup-5704@pimlott.net>
- In-Reply-To
- <1372198415-sup-2114@pimlott.net>
Excerpts from Andrew Pimlott's message of Tue Jun 25 16:03:52 -0700 2013:
Show 11 quoted lines
> Thomas's patch didn't do this: fixup! or squash! after the first is > simply discarded, so you see: > > pick d78c915 original > fixup 0c6388e fixup! original > fixup d15b556 fixup! original > fixup 1e39bcd fixup! original > > But it will be a simple change to keep all the fixup!s and squash!s. I > will do this (and try to make up for the carelessness of my previous > patch).
In order to test this, I wrote a helper function to dump the rebase -i todo list. Would you like this introduced in its own patch, or combined? See below.
Andrew
---8<--- Subject: [PATCH] lib-rebase: set_cat_todo_editor
Add a helper for testing rebase -i todo lists. This can be used to verify the expected user experience, even for todo list changes that do not affect the outcome of rebase.
Signed-off-by: Andrew Pimlott <andrew@pimlott.net> --- t/lib-rebase.sh | 13 +++++++++++++ 1 file changed, 13 insertions(+)
diff --git a/t/lib-rebase.sh b/t/lib-rebase.sh index 4b74ae4..d118dd6 100644 --- a/t/lib-rebase.sh +++ b/t/lib-rebase.sh @@ -66,6 +66,19 @@ EOF chmod a+x fake-editor.sh } +# After set_cat_todo_editor, rebase -i will write the todo list (ignoring +# blank lines and comments) to stdout, and exit failure. + +set_cat_todo_editor () { + echo "#!$SHELL_PATH" >fake-editor.sh + cat >> fake-editor.sh <<\EOF +grep "^[^#]" "$1" +exit 1 +EOF + chmod a+x fake-editor.sh + test_set_editor "$(pwd)/fake-editor.sh" +} + # checks that the revisions in "$2" represent a linear range with the # subjects in "$1" test_linear_range () {
-- 1.7.10.4