Thanks to both Junio and Jonathan for your patience in working through this. Junio, I think I see what you mean. I like teaching --no-ff to 'rebase -i' because it allows me to combine two commands into one for this situation. I've split this work into two patches: The first one simply teaches "rebase -i" to accept and ignore -f. I feel this is better than adding text to the man page explaining why interactive rebase has --no-ff but not -f, while non-interactive has the opposite. The second is a re-roll of the --no-ff patch. The only significant differences are in the documentation: - The rebase man page mentions reverting a merge under both the -f and --no-ff options. - Rewrote the last 3 paragraphs of the revert-a-faulty-merge.txt howto (starting at "But if you don't ..."). I'm wondering now if it would make sense to also teach non-interactive rebase to accept --no-ff as a synonym for -f. Thoughts? M. Documentation/git-rebase.txt | 23 +++++++++- Documentation/howto/revert-a-faulty-merge.txt | 61 +++++++++++++++++++++++++ git-rebase--interactive.sh | 13 +++++- t/t3404-rebase-interactive.sh | 36 +++++++++++++-- 4 files changed, 125 insertions(+), 8 deletions(-) -- 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