Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

local and remote branch need to match names for git push?

Tags:

git

github

It'd be awesome if someone helped me get this.

Say I'm working in master or in a branch called MyBranch and I want to push the changes I just committed to a new github branch. When I do

git push origin RemoteBranch

it'll say something like

error: src refspec RemoteBranch does not match any.
error: failed to push some refs to '[email protected]:bla/bla.git'

1) Why is that? It seems that only way to replicate a commit to a remote branch is to make absolutely sure that their names are a perfect match. Basically I have to locally perform a git branch RemoteBranch, and then I can do a push just fine.

2) How can I see the full list of remote branches?

git branch -a

or

git branch -r

will only show the branches whose match I have on my local repo as opposed to all of the branches available on github.

Thank you!

like image 521
Alexandr Kurilin Avatar asked Jun 28 '11 17:06

Alexandr Kurilin


2 Answers

If you would have a look at the man page, you would find out how.

You could use: git push <remote> <local-branch>:<remote-branch>

like image 63
Thomas Berger Avatar answered Sep 28 '22 02:09

Thomas Berger


You must first create the local branch before you can push it:

git checkout -b RemoteBranch
git push -u origin RemoteBranch

The -u option is to automatically setup RemoteBranch to track origin/RemoteBranch

Or, if you are on master and would like to push up master as a new branch:

git push origin master:RemoteBranch
like image 24
ralphtheninja Avatar answered Sep 28 '22 01:09

ralphtheninja