I created a local branch for testing Solaris and Sun Studio. I then pushed the branch upstream. After committing a change and attempting to push the changes:
$ git commit blake2.cpp -m "Add workaround for missing _mm_set_epi64x"
[solaris 7ad22ff] Add workaround for missing _mm_set_epi64x
1 file changed, 5 insertions(+)
$ git push
fatal: The current branch solaris has no upstream branch.
To push the current branch and set the remote as upstream, use
git push --set-upstream origin solaris
Why do I have to do something special for this?
Is there any reasonable use case where someone would create <branch>
, push the <branch>
to remote, and then claim a commit on <branch>
is not supposed to be for <branch>
?
I followed this question and answer on Stack Overflow: Push a new local branch to a remote Git repository and track it too. I’m guessing its another instance of a incomplete or wrong accepted answer. Or, its another instance of Git taking a simple task and making it difficult.
Here’s the view on a different machine. The branch clearly exists, so it was created and pushed:
$ git branch -a
alignas
* master
remotes/origin/HEAD -> origin/master
remotes/origin/alignas
remotes/origin/arm-neon
remotes/origin/det-sig
remotes/origin/master
remotes/origin/solaris