On Sun, 9 Oct 2016, Jeff King wrote:
> On Sun, Oct 09, 2016 at 06:32:38PM +0700, Duy Nguyen wrote:
> > > If you mean ambiguity between the old "alias.X" and the new "alias.X.*",
> > > then yes, I think that's an unavoidable part of the transition. IMHO,
> > > the new should take precedence over the old, and people will gradually
> > > move from one to the other.
> > Do we really need to treat this differently than
> > [alias]
> > d2u = !dos2unix
> > d2u = C:/cygwin/bin/dos3unix.exe
> > ?
> > Another similar case is one d2u (could be either old syntax or new) is
> > defined in ~/.gitconfig and the other d2u in $GIT_DIR/config. In
> > either case, the "latest" d2u definition wins.
> Yeah, that's reasonable, too. So:
> d2u = "!dos2unix"
> acts exactly as if:
> [alias "d2u"]
> command = dos2unix
> type = shell
> was specified at that point, which is easy to understand.
It is easy to understand, and even easier to get wrong or out of sync. I
really liked the ease of *one* `git config` call to add new aliases. Not
sure that I like the need for more such calls just to add *one* alias (one
config call for "shell", one for "don't cd up", etc).