Re: Add configuration options for some commonly used command-line options
- From
brian m. carlson <sandals@crustytoothpaste.net>
- Date
- Mar 19, 2017, 13:18 UTC
- Message-ID
- <20170319131845.tl6o3t2nwicj2rug@genre.crustytoothpaste.net>
- In-Reply-To
- <vpqa88hlghm.fsf@anie.imag.fr>
On Sun, Mar 19, 2017 at 11:15:33AM +0100, Matthieu Moy wrote:
Show 26 quoted lines
> I think the main problem is indeed "stop the users from shooting > themselves in the foot". Many command-line options change the behavior > completely so allowing users to enable them by default means allowing > the users to change Git in such a way that scripts calling it are > broken. > > This also doesn't help when troublshouting an issue as these options are > typically something set once and for all and which you forget about. > This typically leads to discussion in Q&A forums like: > > A: Can you run "git foo"? > B: Here's the result: ... > A: I don't understand, I can't reproduce here. > > just because B has a CLI option enabled by default. > > This is the same reasoning that leads Git to forbid aliasing an existing > command to something else. > > OTOH, we already have almost "enable such or such option by default" > with aliases. People who always run "git am" with "-3" can write > > [alias] > a3 = am -3 > > and just run "git a3".
I tend to agree here. At work, we have code that wants git status --porcelain to be empty. If a user added -b to all of their git status calls (to make -s output more helpful), that would break a lot of tooling. It's much better if they create an alias, since that doesn't affect automated tools.
I expect developers of things such as fugitive would dislike such a feature as well. I get the impression our existing config file options already make life difficult enough.
-- brian m. carlson / brian with sandals: Houston, Texas, US +1 832 623 2791 | https://www.crustytoothpaste.net/~bmc | My opinion only OpenPGP: https://keybase.io/bk2204