当“git push”给github时出错

我在github.com有一个公共仓库,有两个分支: mastertest

我在本地创建了一个新目录,并执行:

[ ] git clone git@github.com:{username}/{projectname}.git

然后我创建了一个名为my_test的新分支

[ ] git branch my_test

并切换到它。

[ ] git checkout my_test

然后我将它从我公共存储库的test分支中合并

[ ] git merge origin/test

并导致了快速前进。

我做了一些改变并付诸实践。 然后我尝试将本地my_test分支推my_test github上的公共test分支

[ ] git push git@github.com:{username}/{projectname}.git test 

但我得到这个错误:

error: src refspec test does not match any.
fatal: The remote end hung up unexpectedly
error: failed to push some refs to 'git@github.com:{username}/{projectname}.git

我究竟做错了什么 ?


也许试试:

git push git@github.com:{username}/{projectname}.git HEAD:test

该命令行上最后一个参数的格式是一个refspec,它是一个源ref,后跟一个冒号,然后是目标ref。 您也可以使用您的本地分支名称( my_test )而不是HEAD来确定您正在推送正确的分支。

git push的文档在这个参数上有更多的细节。


另外,每次你想推送时,你都不需要输出整个网址。 当你运行克隆时,git将该URL保存为'origin',这就是为什么你可以运行诸如'merge origin / test'之类的东西 - 它意味着'origin'服务器上的'test'分支。 因此,在这种情况下推送到服务器的最简单方法是:

git push origin my_test:test

这会将您本地的'my_test'分支推送到'origin'服务器上的'test'分支。 如果您已经将本地分支命名为与服务器上的分支相同,则冒号不是必须的,您可以简单地执行:

git push origin test

如果您尝试推送到新的存储库而没有提交任何内容,也会出现此错误。 尝试:

git add -A
git commit -am 'Initial commit'

然后再试一次。

链接地址: http://www.djcxy.com/p/27053.html

上一篇: Error when "git push" to github

下一篇: Image in phonegap app need to share with friend on facebook