Re: [PATCH/RFC] git.c: support "!!" aliases that do not move cwd
- From
Jeff King <peff@peff.net>
- Date
- Oct 10, 2016, 18:21 UTC
- Message-ID
- <20161010182129.fta7j7m3lxcgsn2d@sigill.intra.peff.net>
- In-Reply-To
- <xmqqzimcf5wl.fsf@gitster.mtv.corp.google.com>
On Mon, Oct 10, 2016 at 10:52:26AM -0700, Junio C Hamano wrote:
Show 23 quoted lines
> Jeff King <peff@peff.net> writes: > > > Having separate exec/shell boolean options just punts the overlap from > > the command key to those keys. If you have two mutually exclusive > > options, I think the best thing is a single option, like: > > > > type = <shell | exec | whatever> > > > > and then it is obvious that a second appearance of "type" overrides an > > earlier one, by our usual "last one wins" convention. As opposed to: > > > > shell = true > > exec = true > > > > where you have to understand the meaning of each option to know that > > "exec" overrides "shell". > > Good. > > Duy's "do we want to chdir or stay?" would be an orthogonal axis to > "what does the command line look like?" and "how is the command line > run?" so it adds one member to the "alias.<string>.*" family of > variables, I guess.
Yeah, exactly. There may be other orthogonal axes to add, too, but I do not have any in mind myself. My main motive in switching to the "alias.$cmd.key" syntax is that it fixes the ancient mistake of putting arbitrary content into the key (just like pager.*, as we've discussed elsewhere).
-Peff