Re: [PATCH 3/3] pull: introduce --[no-]autostash and pull.autostash
- From
Ramkumar Ramachandra <artagnon@gmail.com>
- Date
- Apr 15, 2013, 14:31 UTC
- Message-ID
- <CALkWK0mLxZCr-QK2tkR9xEsocj6GAM7FZOSeiJ9SnEusfnv88g@mail.gmail.com>
- In-Reply-To
- <vpqbo9foqld.fsf@grenoble-inp.fr>
Matthieu Moy wrote:
> I disagree. A configuration option is something you set once, and then > forget about. A command, or a command-line option, is something you > explicitely add when you need it.
You're making it out to be a much bigger difference than it actually is. Users will simply alias pull to 'pull --autostash' (a lot of them already alias it to pull --ff-only, and I'm going to fix this soon). The decision making process for creating a configuration variable shouldn't be "this is potentially dangerous, and therefore therefore it shouldn't be a configuration variable", but rather "this is a rarely used option that users only need <50% of the time, and therefore it shouldn't be a configuration variable". In my case, pull.autostash is my 90~95% usecase, and I'm not unique in this aspect. Therefore, it should be a configuration variable that can be consciously turned off with a --no-autostash.
If your criticism were that git status doesn't show stash state, I agree with you. However, I don't agree with basing it on user forgetfulness in having set pull.autostash a long time ago + lack of observation skills to notice the message printed by git pull.