Subject: Re: re-mentioning --preserve-merges in the docs

From: Junio C Hamano <[email-masked]>
Date: Thu, 21 Jul 2022 13:15:31 -0700

Ævar Arnfjörð Bjarmason <[email-masked]> writes:

> On Tue, Sep 07 2021, Johannes Schindelin via GitGitGadget wrote:
>
>> From: Johannes Schindelin <[email-masked]>
>> [...]
>> --p::
>> ---preserve-merges::
>> -	[DEPRECATED: use `--rebase-merges` instead] Recreate merge commits
>> -	instead of flattening the history by replaying commits a merge commit
>> -	introduces. Merge conflict resolutions or manual amendments to merge
>> -	commits are not preserved.
>
> [In reply to an old commit]
>
> I opened "man git-rebase" today due to an on-list discussion and went
> through pretty much:
>
>  1. /preserve-merges # fails
>  2. skimming the SYNOPSIS, forgetting what the new thing is called
>  3. Paging down, eventually findinging & remembering the new thing is
>     "--rebase-merges".
>
> I wonder if there's objections to reinstating this in the docs
> somewhere, just as something like:
>
> 	--preserve-merges:
> 		An old "rebase" backend which is no longer supported,
> 		and which was removed from git in version v2.35.0.
>
> We don't do that with all flags that we've dropped, but perhaps this one
> was well known enough to not leave readers hanging...

My impression is that we consider that we have done so already for a
few releases by keeping "DEPRECATED: use rebase-merges", exactly
because "this one was well known enough", and now it is time to go
one step further, i.e. drop it from the document like the quoted
patch does, while recognising an attempt to use the option and
giving a custom message than the bog-standard "unknown option".

    $ git rebase --preserve-merges
    fatal: --preserve-merges was replaced by --rebase-merges
    Note: Your `pull.rebase` configuration may also be set to 'preserve',
    which is no longer supported; use 'merges' instead

The next step will be to drop that custom error support, I think.