Re: Adding push configuration to .git/config
From: Steffen Prohaska <hidden>
Date: 2016-06-15 22:43:53
On Nov 22, 2007, at 12:23 PM, Johannes Schindelin wrote:
I have to say that I slowly grow an antipathy for "git push" without parameters. _All_ of the confusions with push that I saw stem from being too lazy to say where and what you want to push. (Okay, there is this other thing where people say "git push origin master:master" and I still do not know where they got _that_ from.)
I don't agree. "git push" should support good defaults. At some point you make the decision to publish, and you use "git push" for this. If you have a reasonably stable environment there will be a good default, what publishing means. Obviously users should think before they "git push". They know that they are publishing, and they (hopefully) understand that they can't easily undo this operation. But I believe people who used any version control system before know that. It's the same for every system. If you publish, others can get your source, and this can't easily be reverted. But people are lazy, and having a good default is what they expect from a good tool. The default should be safe, and reliably do something useful. A good default can safe you from typing errors. But the default should not do too much, and should not do unexpected things; at least not until you explicitly configured. You know that I believe the current default is not such a choice. Pushing matching branches sooner or later triggers annoying errors if used with a shared remote repository. But this is how the default is; and I'll live with it. At least it saves me time. I learnt to ignore the error messages. And we now have '--dry-run'. So I can quickly check what will happen. But, I strongly believe that a tool that expects users to type the current branch and the default remote each time; just for publishing some changes to the default location, is not what users want. Steffen