This patch series reimplements the expensive pre- and post-processing of the todo script in C. And it concludes the work I did to accelerate rebase -i. Johannes Schindelin (9): rebase -i: generate the script via rebase--helper rebase -i: remove useless indentation rebase -i: do not invent onelines when expanding/collapsing SHA-1s rebase -i: also expand/collapse the SHA-1s via the rebase--helper t3404: relax rebase.missingCommitsCheck tests rebase -i: check for missing commits in the rebase--helper rebase -i: skip unnecessary picks using the rebase--helper t3415: test fixup with wrapped oneline rebase -i: rearrange fixup/squash lines using the rebase--helper builtin/rebase--helper.c | 29 ++- git-rebase--interactive.sh | 362 ++++------------------------- sequencer.c | 514 ++++++++++++++++++++++++++++++++++++++++++ sequencer.h | 7 + t/t3404-rebase-interactive.sh | 22 +- t/t3415-rebase-autosquash.sh | 16 +- 6 files changed, 614 insertions(+), 336 deletions(-) Based-On: rebase--helper at https://github.com/dscho/git Fetch-Base-Via: git fetch https://github.com/dscho/git rebase--helper Published-As: https://github.com/dscho/git/releases/tag/rebase-i-extra-v1 Fetch-It-Via: git fetch https://github.com/dscho/git rebase-i-extra-v1 -- 2.9.3.windows.3 base-commit: 4c39918f42eb8228ea4241073f86f2ac851f4636