当“git push”给github时出错
我在github.com有一个公共仓库,有两个分支: master
和test
。
我在本地创建了一个新目录,并执行:
[ ] 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