If you have 59 seconds and in particular you're also on mobile, you might enjoy watching the YouTube #Shorts video.
When creating and pushing a new branch, you will get this error:
fatal: The current branch feature/my-cool-branch has no upstream branch.
To push the current branch and set the remote as upstream, use
git push --set-upstream origin feature/my-cool-branch
Since version 2.37 git has introduced a new config, called push.autoSetupRemote
that covers this case.
From the official documentation:
If set to "true" assume --set-upstream on default push when no upstream tracking exists for the current branch; this option takes effect with push.default options simple, upstream, and current. It is useful if by default you want new branches to be pushed to the default remote (like the behavior of push.default=current) and you also want the upstream tracking to be set. Workflows most likely to benefit from this option are simple central workflows where all branches are expected to have the same name on the remote.
First of all, make sure you're on version 2.37 or higher by just running
git --version
You can download the latest version from https://git-scm.com/ or via command line, for example with a mac using homebrew
:
brew install git
Now that you're all set, just run this command:
git config --global push.autoSetupRemote true
It will set in your global git configuration file the value true
to push.autoSetupRemote
.
With that set, all first-time push on new branches will automatically set the default upstream.
To see it live, you can have a look at this short YouTube video.
Thanks for reading this post, I hope you find it interesting!
Feel free to follow me to get notified when new articles are out ;)
Top comments (18)
Did you know about this new command?
It has been released just a few weeks ago, I noticed it by casually scrolling on Twitter!
Let me know if you heard of some other cool features that have been recently introduced!
Thanks a lot, someone mentioned it in a recent rant I wrote about git, but I didn't know how to use it. This should have been the default from the start but better late than never.
Superb! Thanks for sharing.
Nice one ! Thanks !
Thanks a lot for sharing this.
nice one
Do you mind update yet link? It's doesn't work on my device at least
Sure! What link is not working?
Oh sorry, it would be link to my short first at the begging of post and at the end too
youtube.com/shorts/KrgNpJA0sX4
This is the link, it works for me though 🤔
Hmm so maybe it's some country restrictions or STH on yt side anyway thanks and sorry for confusion
No worries!
If you can see the channel, it's the most recent video here youtube.com/c/DevLeonardo
How does it decide which remote to push to? I regularly have multiple remotes for any of my repos.
git push up 💪
Cool. Before this, I used gpsup (git plugin on oh-my-zsh)
Thanks for sharing, i remember it was pain the rear when I use to have git cmd. I use GitHub desktop these days