rebase: Support preserving merges in non-interactive mode
authorAndreas Ericsson <ae@op5.se>
Mon, 29 Sep 2008 20:28:57 +0000 (22:28 +0200)
committerShawn O. Pearce <spearce@spearce.org>
Tue, 30 Sep 2008 22:34:52 +0000 (15:34 -0700)
commitf8cca019b9ea9471719505ca6ccf020feb219d98
tree0d6224a8911d4a9ad10cb63689a22070e273bf1b
parent8b745e3ffdabe6ef110dc064af46b0ba993941e0
rebase: Support preserving merges in non-interactive mode

As a result of implementation details, 'git rebase' could
previously only preserve merges in interactive mode. That
limitation was hard for users to understand and awkward to
explain.

This patch works around it by running the interactive rebase
helper git-rebase--interactive with GIT_EDITOR set to ':'
when the user passes "-p" but not "-i" to the rebase command.
The effect is that the interactive rebase helper is used but
the user never sees an editor.

The test-case included in this patch was originally written
by Stephen Habermann <stephen@exigencecorp.com>, but has
been extensively modified since its creation.

Signed-off-by: Andreas Ericsson <ae@op5.se>
Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
Documentation/git-rebase.txt
git-rebase.sh
t/t3409-rebase-preserve-merges.sh [new file with mode: 0755]