On 26/05/2022 21:55, Junio C Hamano wrote:
"Philip Oakley via GitGitGadget" <gitgitgadget@xxxxxxxxx> writes:
From: Philip Oakley <philipoakley@iee.email>
The `--preserve-merges` option was removed by v2.35.0. However
Are you sure about that?
Not any more. I think that was because of the version the user reported...
It's clearly wrong, as the down grade is to 2.33.0
52f1e821 (pull: remove support for `--rebase=preserve`, 2021-09-07)
that is in v2.34.0 and above dropped pull.rebase=preserve from the
Documentation/config/pull.txt (and others). My local collection
of various Git versions agrees with me. "git help config" from
2.34.0 does not list preserve as a valid choice, but 2.33.0 does.
users may not be aware that it is also a Pull option, and it is
still offered by major IDE vendors such as Visual Studio.
Extend the `--preserve-merges` die message to also direct users to
the use of the `preserve` option in the `pull` config.
Signed-off-by: Philip Oakley <philipoakley@iee.email>
---
builtin/rebase.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/builtin/rebase.c b/builtin/rebase.c
index aada25a8870..6fc0aaebbb8 100644
--- a/builtin/rebase.c
+++ b/builtin/rebase.c
@@ -1205,7 +1205,8 @@ int cmd_rebase(int argc, const char **argv, const char *prefix)
builtin_rebase_usage, 0);
if (preserve_merges_selected)
- die(_("--preserve-merges was replaced by --rebase-merges"));
+ die(_("--preserve-merges was replaced by --rebase-merges\n"
+ "Your `pull` configuration, may also invoke this option."));
What is a `pull` configuration?
I was thinking of 'those that relate to the pull command';-)
Our configuration variable names
all have at least one dot in it. I think it is better to be
explicit to clarify what exactly we are suggesting to fix.
"Your `pull.rebase` configuration may be set to 'preserve', which is
no longer supported; use 'merges' instead", or somesuch?
That's a lot better. I'll borrow that..
P.