Message ID | ece3eecdc4de44cdec1b6efa9079930721db85ad.1653556865.git.gitgitgadget@gmail.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | Die preserve ggg | expand |
On Thu, May 26 2022, Philip Oakley via GitGitGadget wrote: > From: Philip Oakley <philipoakley@iee.email> > > The `--preserve-merges` option was removed by v2.35.0. However > 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.")); > > if (action != ACTION_NONE && total_argc != 2) { > usage_with_options(builtin_rebase_usage, Ditto 2/3 about maybe die_message() + advise(). In this case that has the slight advantace of allowing us to keep the existing translated string as-is. But also, is *our* pull configuration causing us to end up here? I vaguely recall that being discussed (probably in answer to a question of mine) in the earlier round, or is this the IDE picking it up & invoking us like this?
hi, On 26/05/2022 10:50, Ævar Arnfjörð Bjarmason wrote: > On Thu, May 26 2022, Philip Oakley via GitGitGadget wrote: > >> From: Philip Oakley <philipoakley@iee.email> >> >> The `--preserve-merges` option was removed by v2.35.0. However >> 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.")); >> >> if (action != ACTION_NONE && total_argc != 2) { >> usage_with_options(builtin_rebase_usage, > Ditto 2/3 about maybe die_message() + advise(). I'm not that enamoured about hiding die message details behind an advice option. In this case it not meant to be a regular reminder type thing, rather a one-off fix-it-forever sort of `advice'. At least that my reasoning. > In this case that has > the slight advantace of allowing us to keep the existing translated > string as-is. > > But also, is *our* pull configuration causing us to end up here? Yes, but. The extra message is about fixing all places that the user may have setup a config for using preserve-merges, not just here. The fact that IDEs offer a menu for adding that setting makes it easy for users to get into this. I'd agree that pull already has detection for this, but I was looking to avoid the 'fool me once, fool me twice' scenarios. It could be dropped if thought over zealous. > I > vaguely recall that being discussed (probably in answer to a question of > mine) in the earlier round, or is this the IDE picking it up & invoking > us like this? >
"Philip Oakley via GitGitGadget" <gitgitgadget@gmail.com> writes: > From: Philip Oakley <philipoakley@iee.email> > > The `--preserve-merges` option was removed by v2.35.0. However Are you sure about that? 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? 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? Thanks.
On 26/05/2022 21:55, Junio C Hamano wrote: > "Philip Oakley via GitGitGadget" <gitgitgadget@gmail.com> 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.
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.")); if (action != ACTION_NONE && total_argc != 2) { usage_with_options(builtin_rebase_usage,