当前位置:  开发笔记 > 运维 > 正文

当"git push"到github时出错

如何解决《当"gitpush"到github时出错》经验,为你挑选了2个好方法。

我在github.com上有一个公共存储库,有2个分支: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分支推送到testgithub上的公共分支

[ ] 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

我究竟做错了什么 ?



1> Greg Hewgill..:

也许试试:

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

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

该文档git push包含有关此参数的更多详细信息.



2> 小智..:

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

git push origin my_test:test

这会将您的本地"my_test"分支推送到"origin"服务器上的"test"分支.如果您将本地分支命名为与服务器上的分支相同,则冒号不是必需的,您只需执行以下操作:

git push origin test

推荐阅读
个性2402852463
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有