git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Michael J Gruber <git@drmicha.warpmail.net>
To: Jeff King <peff@peff.net>
Cc: David Pisoni <dpisoni@gmail.com>,
	GIt Mailing List <git@vger.kernel.org>,
	Git Maintainer <gitster@pobox.com>
Subject: Re: [PATCH] Adds 'stash.index' configuration option
Date: Thu, 12 May 2011 10:14:49 +0200	[thread overview]
Message-ID: <4DCB96F9.2020700@drmicha.warpmail.net> (raw)
In-Reply-To: <20110512080425.GA11870@sigill.intra.peff.net>

Jeff King venit, vidit, dixit 12.05.2011 10:04:
> On Thu, May 12, 2011 at 09:14:09AM +0200, Michael J Gruber wrote:
> 
>> This is yet another incarnation of
>>
>> foo.bar = true
>>
>> meaning that command "git foo" defaults to "git foo --bar". (Admittedly,
>> this is about subcommands of foo.)
>>
>> It has the same problems (possibly breaking scripts). But more
>> importantly, it inflates the code with every such incarnation we add.
>> Have we really agreed that we introduce these one-by-one rather than
>> doing something generic like
>>
>> uiopts.<cmd> = <optionlist>
>>
>> with which you would do
>>
>> uiopts.stash = "--index"
>>
>> and hopefully be script-safe (again, ignoring the subcommand issue)?
> 
> I would love to see something like this, but have we yet figured out all
> of the issues, like:
> 
>   1. How do scripts wanting to call git programs suppress expansion of
>      uiopts when they want predictable behavior?
> 
>   2. Depending on the solution to (1), how do scripts specify that they
>      _do_ want to allow uiopts (e.g., because they know they are
>      presenting the output to the user) for certain commands?
> 
>   3. Depending on (1) and (2), how do scripts differentiate when some
>      options are OK in uiopts, but others are not? For example, it may
>      be desirable for an invocation of diff-tree to have renames turned
>      on by the user, but not for them to change the output format.
> 

We haven't figured that out, but was the consensus: "Whatever, let's
just keep adding single options." ?

> As much as it sucks to have a config option for each individual option,
> there is at least some oversight of which options will not cause too
> much of a problem when triggered automatically.

I just think we have too many commands which are ui and are used in
scripts (e.g. log, commit, stash, just to name a few) for being able to
decide that ourselves. Are we saying that people using "git stash" in a
script have to deal themselves with a breakage caused by "--index" being
a default for some users now?

With a generic approach, we could protect all git-sh-setup using scripts
right from the start, for example, while still allowing to override some
options or to protect only a few (based on the explicit wishes of a
uiopts-aware script).

Michael

  reply	other threads:[~2011-05-12  8:14 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-05-11 22:57 [PATCH] Adds 'stash.index' configuration option David Pisoni
2011-05-11 23:46 ` Junio C Hamano
2011-05-12  0:26   ` Junio C Hamano
2011-05-12  0:48     ` David Pisoni
2011-05-12  0:54       ` Junio C Hamano
2011-05-12  7:14 ` Michael J Gruber
2011-05-12  8:04   ` Jeff King
2011-05-12  8:14     ` Michael J Gruber [this message]
2011-05-12  8:22       ` Jeff King
2011-05-12 14:35         ` RFC proposal: set git defaults options from config Michael J Gruber
2011-05-12 22:36           ` David Pisoni
2011-05-16 11:05             ` Jeff King
2011-05-16 11:02           ` Jeff King
2011-05-16 12:54             ` Michael J Gruber

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=4DCB96F9.2020700@drmicha.warpmail.net \
    --to=git@drmicha.warpmail.net \
    --cc=dpisoni@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=peff@peff.net \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).