локальная и удаленная ветка должны совпадать с именами для git push? - PullRequest
5 голосов
/ 28 июня 2011

Было бы замечательно, если бы кто-нибудь помог мне получить это.

Скажем, я работаю в master или в ветке с именем MyBranch и хочу перенести изменения, которые я только что зафиксировал, в новую ветку github.Когда я делаю

git push origin RemoteBranch

, он говорит что-то вроде

error: src refspec RemoteBranch does not match any.
error: failed to push some refs to 'git@github.com:bla/bla.git'

1) Почему это так?Кажется, что единственный способ реплицировать коммит на удаленную ветку - это абсолютно убедиться, что их имена идеально совпадают.По сути, я должен выполнить локальную ветку git RemoteBranch, и тогда я смогу сделать толчок просто отлично.

2) Как я могу увидеть полный список удаленных веток?

git branch -a

или

git branch -r

будет показывать только те ветки, чьи совпадения есть в моем локальном репо, в отличие от всех веток, доступных на github.

Спасибо!

Ответы [ 2 ]

11 голосов
/ 28 июня 2011

Если бы вы заглянули на страницу man, вы бы узнали, как.

Вы можете использовать: git push <remote> <local-branch>:<remote-branch>

2 голосов
/ 28 июня 2011

Вы должны сначала создать локальную ветвь, прежде чем вы сможете нажать ее:

git checkout -b RemoteBranch
git push -u origin RemoteBranch

Параметр -u предназначен для автоматической настройки RemoteBranch для отслеживания origin / RemoteBranch

Или, если вы работаете с мастером и хотите открыть мастер как новую ветвь:

git push origin master:RemoteBranch
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...