All of lore.kernel.org
 help / color / mirror / Atom feed
From: Felipe Contreras <felipe.contreras@gmail.com>
To: Alex Henrie <alexhenrie24@gmail.com>,
	Felipe Contreras <felipe.contreras@gmail.com>
Cc: "Git mailing list" <git@vger.kernel.org>,
	"Vít Ondruch" <vondruch@redhat.com>,
	"Jacob Keller" <jacob.keller@gmail.com>,
	"Junio C Hamano" <gitster@pobox.com>, "Jeff King" <peff@peff.net>,
	"Elijah Newren" <newren@gmail.com>
Subject: Re: [PATCH 2/2] pull: improve default warning
Date: Mon, 21 Jun 2021 17:12:13 -0500	[thread overview]
Message-ID: <60d10ebd99d86_113139208cd@natae.notmuch> (raw)
In-Reply-To: <CAMMLpeRnUC+nOek=Kz6bj0_R6EUaDr=7ObKF01V641_ByOmk6A@mail.gmail.com>

Alex Henrie wrote:
> On Mon, Jun 21, 2021 at 12:51 PM Felipe Contreras
> <felipe.contreras@gmail.com> wrote:
> >
> > Alex Henrie wrote:
> > > On Mon, Jun 21, 2021 at 11:52 AM Felipe Contreras
> > > <felipe.contreras@gmail.com> wrote:
> > > >
> > > > +                "If unsure, run \"git pull --no-rebase\".\n"
> > >
> > > I don't think the message should recommend merging over rebasing;
> >
> > This is the default strategy.
> 
> Yes, but it shouldn't be,

Feel free to propose a patch to change that, in the meantime this is the
default.

> and we shouldn't make the problem worse by encouraging people to
> default to merging without thinking.

We are not.

> > > The eventual goal is to get rid of the default here and make the user
> > > make an educated choice, which does imply some work on the user's
> > > part, but it avoids the massive headaches created by users merging
> > > without understanding what they're doing.
> >
> > Indeed, but any minute change in git's UI is a gargantuan task that
> > takes several years--or even decades--to accomplish, if it ever happens.
> > I started this patch in 2013, and here we are.
> 
> Although what needs to be done had been envisioned by some as early as
> 2013, the warning has only been around since Git 2.27 (released in
> June 2020), and it was only restricted to pulls where fast-forwarding
> is impossible in Git 2.31 (released in March 2021). The good news is
> that (unless I'm mistaken) there are no more changes that need to be
> made prior to changing the message from from "advise" to "die".

There is *a lot* that needs to be done.

 1. Update the documentation
 2. Add a --merge option (instead of the ackward --no-rebase)
 3. Fix all the wrong behavior with --ff, --no-ff, and -ff-only
 4. Add a pull.mode configuration
 5. Add a configuration for the mode in which we want to die
 6. Fix inconsistencies in the UI

Only *then* can we even begin to throw a warning stating that the
default behavior might change in the future, and how to try the new
behavior.

> All that needs to be done is to set a date to make the switch.

No, there's a lot more.

> For comparison, users were given from Git 1.8 to Git 2.0 (October 2012
> to May 2014, 1 year and 7 months) to acclimate when push.default
> changed from "matching" to "simple".

We haven't told the users the default mode is going to change for a
single day. We don't have a configuration to tell them to turn on to
enable the new mode, nor do we have a configuration to tell them to
enable to stay in the old mode.

There's no configuration in git 2.32 that is equivalent to what I
proposed with pull.mode=fast-forward?


In the meantime there's no reason to have subpar documentation.

-- 
Felipe Contreras

  reply	other threads:[~2021-06-21 22:12 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-21 17:52 [PATCH 0/2] pull: documentation improvements Felipe Contreras
2021-06-21 17:52 ` [PATCH 1/2] doc: pull: explain what is a fast-forward Felipe Contreras
2021-06-22  5:51   ` Bagas Sanjaya
2021-06-23  1:11     ` Felipe Contreras
2021-06-24 14:21   ` Philip Oakley
2021-06-24 14:31     ` Felipe Contreras
2021-06-24 16:59       ` Philip Oakley
2021-06-24 19:05         ` Felipe Contreras
2021-06-24 22:07           ` Philip Oakley
2021-06-24 23:41             ` Felipe Contreras
2021-06-25  9:12               ` Ævar Arnfjörð Bjarmason
2021-06-25 10:47                 ` Felipe Contreras
2021-06-25 10:59                   ` Ævar Arnfjörð Bjarmason
2021-06-25 15:49                     ` Felipe Contreras
2021-06-25 16:53                     ` Kerry, Richard
2021-06-25 17:34                       ` Felipe Contreras
2021-06-25 21:36                         ` Felipe Contreras
2021-06-21 17:52 ` [PATCH 2/2] pull: improve default warning Felipe Contreras
2021-06-21 18:05   ` Alex Henrie
2021-06-21 18:51     ` Felipe Contreras
2021-06-21 21:47       ` Alex Henrie
2021-06-21 22:12         ` Felipe Contreras [this message]
2021-06-22  3:15           ` Alex Henrie
2021-06-22  4:26             ` Felipe Contreras
2021-06-22 15:06             ` Elijah Newren
2021-06-22 21:22               ` Alex Henrie
2021-06-23  2:20                 ` Elijah Newren
2021-06-23  4:18                   ` Felipe Contreras
2021-06-23  6:47                     ` Elijah Newren
2021-06-23 17:24                       ` Felipe Contreras
2021-06-23  1:09               ` Felipe Contreras
2021-06-23  7:54                 ` Elijah Newren
2021-06-23 18:19                   ` Felipe Contreras
2021-06-24  3:38                     ` Alex Henrie
2021-06-24  5:55                       ` Felipe Contreras
2021-06-27  0:17                         ` Alex Henrie
2021-06-27  4:21                           ` Felipe Contreras
2021-06-23  0:48 ` [PATCH v2 0/2] pull: documentation improvements Felipe Contreras
2021-06-23  0:48   ` [PATCH v2 1/2] doc: pull: explain what is a fast-forward Felipe Contreras
2021-06-23  0:48   ` [PATCH v2 2/2] pull: improve default warning Felipe Contreras

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=60d10ebd99d86_113139208cd@natae.notmuch \
    --to=felipe.contreras@gmail.com \
    --cc=alexhenrie24@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=jacob.keller@gmail.com \
    --cc=newren@gmail.com \
    --cc=peff@peff.net \
    --cc=vondruch@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.