Hi Ævar, On Thu, 2 May 2019, Ævar Arnfjörð Bjarmason wrote: > On Mon, Mar 11 2019, Johannes Schindelin via GitGitGadget wrote: > > > From: Johannes Schindelin > > > > @@ -1212,6 +1212,10 @@ int cmd_rebase(int argc, const char **argv, const char *prefix) > > usage_with_options(builtin_rebase_usage, > > builtin_rebase_options); > > > > + if (options.type == REBASE_PRESERVE_MERGES) > > + warning(_("git rebase --preserve-merges is deprecated. " > > + "Use --rebase-merges instead.")); > > + > > if (action != NO_ACTION && !in_progress) > > die(_("No rebase in progress?")); > > setenv(GIT_REFLOG_ACTION_ENVIRONMENT, "rebase", 0); > > An internal user reported the following "bug" they ran into: > > 1. They ran "git pull --rebase=preserve" > 2. warning: git rebase --preserve-merges is deprecated. Use --rebase-merges instead. > > This is very confusing, since the user issued "--rebase=preserve", *not* > "--preserve-merges". > > We could detect that we came from "git pull" and pass down the argv we > used blah blah, but how about just describing things a bit more in the > warning, e.g.: > > warning: the "preserve" backend for 'git rebase' has been > deprecated. You invoked git with "rebase --preserve-merges", either > directly, or via "pull --rebase=preserve". > > Use the new "rebase merges" backend of "git rebase" instead, invoked > via "rebase --rebase-merges" or "pull --rebase=merges". Note that > the new backend may yield different results, see the "git rebase" > documentation for details. Don't forget `pull.rebase`. And the proposed text makes it sound as if the results of `--rebase=merges` is wrong, while I would contend that it is actually more correct than `--rebase=preserve`'s output. In general, I do agree with the direction of making the description more general rather than trying to teach `git-rebase--preserve-merges.sh` from where it was called and showing a different deprecation message. Do you want to take the lead on this? If so, be my guest, I still have to prepare Git for Windows for -rc0... Ciao, Dscho