This splits the `rebase --preserve-merges` functionnality from git-rebase--interactive.sh. This is part of the effort to depreciate preserve-merges. The new script, git-rebase--preserve-merges.sh, should be left to bitrot. All the dead code left by the duplication of git-rebase--interactive.sh is also removed. This patch series is based of js/sequencer-and-root-commits. Alban Gruin (4): rebase: duplicate git-rebase--interactive.sh to git-rebase--preserve-merges.sh rebase: strip unused code in git-rebase--preserve-merges.sh rebase: use the new git-rebase--preserve-merges.sh rebase: remove -p code from git-rebase--interactive.sh .gitignore | 1 + Makefile | 2 + git-rebase--interactive.sh | 708 +--------------------------- git-rebase--preserve-merges.sh | 1004 ++++++++++++++++++++++++++++++++++++++++ git-rebase.sh | 32 +- 5 files changed, 1040 insertions(+), 707 deletions(-) create mode 100644 git-rebase--preserve-merges.sh -- 2.16.1