git branches are a lovely thing to keep your work tidy and easily collaborate with other developers. But if you want to avoid those pesky upstream error messages when trying to push a freshly created branch, there are two things you can do.
If trying to push a branch that does not have a remote counter part yet,
git push will give you an error message:
fatal: The current branch foobar has no upstream branch.
There are two easy ways to fix this:
git config --add alias.pushup '!git push --set-upstream origin $(git symbolic-ref --short HEAD)'
This simple command will setup an alias. Now, typing
git pushup will invoke the command above. The exclamation mark at the beginning tells git that this is a shell command, and to execute it from the root directory of the current project. It can be freely used in place of
If you’re running the latest version of git, things become even easier:
git v2.37.0, released 2022-06-27, has added a new config option:
If set to true, git pushes will behave like we used our alias above. Simply do this to set the option globally:
git config --global --add --bool push.autoSetupRemote true