If you’ve recently updated Git, chances are you’ve seen this message when doing a git push:
warning: push.default is unset; its implicit value is changing in Git 2.0 from 'matching' to 'simple'. To squelch this message and maintain the current behavior after the default changes, use: git config --global push.default matching To squelch this message and adopt the new behavior now, use: git config --global push.default simple
The ‘matching’ option is the default behavior in Git 1.x. It means that if you do a git push without specifying a branch, it will push all your local branches to their matching ones on your remote repository.
The new default in Git 2.x is ‘simple’. It means that when doing a git push without specifying a branch, only your current branch will be pushed to the one git pull would normally get your code from.
Set your default
As explained in the message, you can set your default in the global config not to get notified each time you push. For ‘matching’, enter this at the command line:
git config --global push.default matching
and for ‘simple’ (my personal preference), enter this:
git config --global push.default simple