From: Johannes Sixt Date: Fri, 07 Oct 2016 17:42:35 GMT Subject: Re: [PATCH/RFC] git.c: support "!!" aliases that do not move cwd Message-ID: <0347de20-72a7-b384-389f-4b2ad5789973@kdbg.org> In-Reply-To: Am 07.10.2016 um 14:27 schrieb Duy Nguyen: > On Fri, Oct 7, 2016 at 6:20 PM, Johannes Schindelin > wrote: >> Hi Junio, >> >> On Thu, 6 Oct 2016, Junio C Hamano wrote: >> >>> Nguyễn Thái Ngọc Duy writes: >>> >>>> Throwing something at the mailing list to see if anybody is >>>> interested. >>>> >>>> Current '!' aliases move cwd to $GIT_WORK_TREE first, which could make >>>> handling path arguments hard because they are relative to the original >>>> cwd. We set GIT_PREFIX to work around it, but I still think it's more >>>> natural to keep cwd where it is. >>>> >>>> We have a way to do that now after 441981b (git: simplify environment >>>> save/restore logic - 2016-01-26). It's just a matter of choosing the >>>> right syntax. I'm going with '!!'. I'm not very happy with it. But I >>>> do like this type of alias. >>> >>> I do not know why you are not happy with the syntax, but I >>> personally think it brilliant, both the idea and the preliminary >>> clean-up that made this possible with a simple patch like this. >> >> I guess he is not happy with it because "!!" is quite unintuitive a >> construct. I know that *I* would have been puzzled by it, asking "What the >> heck does this do?". > > Yep. And I wouldn't want to set a tradition for the next alias type > '!!!'. There's no good choice to represent a new alias type with a > leading symbol. This just occurred to me, however, what do you think > about a new config group for it? With can have something like > externalAlias.* (or some other name) that lives in parallel with > alias.*. Then we don't need '!' (or '!!') at all. Maybe it's time to aim for git config alias.d2u.shell \ 'f() { git ls-files "$@" | xargs dos2unix; }; f' git config alias.d2u.cdup false git d2u *.c # yada! -- Hannes