Hi, This patch series is part of the undertaking to add command line options to to-do list commands. The goal is to be able to write something similar to pick --reset-author --signoff a Some changes pick b Some more changes squash --no-edit c Ack Some more changes. The first submission to the mailing list adds options parsing to `do_pick` and reimplements the current set of to-do list commands in terms[1] of a parametrized `do_pick`. It neither adds new commands to to-do lists nor exposes the command line options feature to the user. Still it makes the implementation of `do_next` slightly more straight-forward and the function `do_pick` behave more like an internal git-cherry-pick. The patches try to accomplish one thing at a time but are not standalone in the sense that each of them constitutes a frame only in which a subsequent patch can express its one thing. For instance, only committing once and not dying in `do_pick` are things specific to implementing `squash` in terms of `do_pick` but presented as separate patches so that their correctness can be discussed independently. The last patch contains some notes about when to run the post-rewrite hook, something I could not figure out myself. Thanks for your time, Fabian [1] pick, reword, squash, fixup Fabian Ruch (7): rebase -i: Make option handling in pick_one more flexible rebase -i: Teach do_pick the option --edit rebase -i: Stop on root commits with empty log messages rebase -i: Commit only once when rewriting picks rebase -i: Do not die in do_pick rebase -i: Prepare for squash in terms of do_pick --amend rebase -i: Teach do_pick the options --amend and --file git-rebase--interactive.sh | 194 +++++++++++++++++++++++++++++++----------- t/t3404-rebase-interactive.sh | 8 ++ t/t3412-rebase-root.sh | 39 +++++++++ 3 files changed, 193 insertions(+), 48 deletions(-) -- 2.0.0 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html