From: Johannes Schindelin Date: Fri, 22 Apr 2016 06:42:32 GMT Subject: Re: [PATCH/RFC/GSoC 0/2] add a add.patch config variable Message-ID: In-Reply-To: <34fb607f-1c4c-528a-cb5d-eca95e0e7c68@web.de> Hi Dominik, On Thu, 21 Apr 2016, Dominik Fischer wrote: > Indeed this needs more explanations for everyone who did not read the posts > before. Such as is the case for me. And most future readers of the commit messages ;-) > I strove to create an add.patch configuration option that did the same as > always passing the parameter --patch to git-add. Ah. So a much more intriguing mail subject would be "add: optionally imply --patch by default"? > Junio C Hamano then made me aware that when set, this option would > influence and possibly destroy other commands that internally use > git-add. So I implemented the recursion counter, which is now the first > of the two commits. With this, git-add is able to only consider the > configuration option when run directly by the user, not affecting any > commands building upon it. Hmm. But what if `git add` was not run by the user, but rather by a script? I am wary that the recursion counter may not really be able to answer the question "Was this `git add` called by the user *directly*?". > I would be interested whether this is a suited method to restrict the > effect of a configuration option to cases where a command is explicitly > invoked by the user. As I said, I do not think this method can do that reliably. Traditionally, we recommend aliases in such a case. They are just as opt-in and also config settings: git config [--global] alias.ap 'add -p' Then, `git ap m*.cpp` would work just like you would expect. Ciao, Johannes