Re: Pull is Evil

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, May 02, 2014 at 03:34:34PM -0500, Felipe Contreras wrote:
> W. Trevor King wrote:
> > On Fri, May 02, 2014 at 02:13:25PM -0500, Felipe Contreras wrote:
> > > It would matter almost exactly zero.
> > 
> > Some folks have explicit merge policies, and deciding how much
> > that matters is probably best left up to the projects themselves
> > and not decided in Git code.
> 
> Let's make some fake numbers to see around how much this would matter.

The point isn't that this is a huge flaw, the point is that we should
be able to configure Git to match sane workflows.  Saying “that's
unlikely to happen” doesn't solve the problem that some newcomers have
trouble matching their project's desired workflow.

> So no, for all intents and purposes it doesn't matter. I would rather
> concentrate on the issue more than 90% of the users face.

You don't have to concentrate on it, because I'm willing to write up
the patch, I'm just trying to find a consensus spec before writing the
patch.  If you don't have strong feelings about a pull.prompt
proposal, I won't mind ;).  I just don't want to write it up and
*then* hear “that's a terrible idea, you should have just done $x.”.

> > > And just as they can do pull.promot = true, they can do pull.mode =
> > > fetch-only.
> > 
> > Why would you run a fetch-only pull instead of running 'git fetch'?  I
> > think it would make more sense to have 'pull.mode = none' with which
> > 'git pull …' turns into a no-op suggesting an explicit
> > fetch/{merge|rebase}.  Having something like that available would
> > help with the training issue that pull.prompt was addressing.
> 
> I fail to see how training them to do this:
> 
>   % git config --global pull.mode none
>   % git pull
>   % git fetch
>   % git merge --no-ff
> 
> Is preferable than training them to do:
> 
>   % git pull --no-ff

The goal is to train them to do:

>   % git config --global pull.mode none
>   % git fetch
>   % git merge --no-ff

The 'git pull' (with 'none' mode) explainer just helps retrain folks
that are already using the current 'git pull' incorrectly.

The benefit is that the repeated pair of commands (fetch/merge) takes
longer to type, which gives them longer to realize that they should
think about what they're doing and abort.  That's all a pull.prompt
would be doing anyway.

Cheers,
Trevor

-- 
This email may be signed or encrypted with GnuPG (http://www.gnupg.org).
For more information, see http://en.wikipedia.org/wiki/Pretty_Good_Privacy

Attachment: signature.asc
Description: OpenPGP digital signature


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]