今天在执行git push命令时出现如下错误
直译:当前分支dev没有上游分支
原因:当前分支没有与远程分支建立连接
解决方法
按照提示执行
git push --set-upstream origin dev
简写模式
git push --u origin dev
这个意思是把本地dev push到orgin的dev 上,-u 表示同时建立连接,以后再推送到远程只需要git push orgin
皆可以。
分析
git分支与远程主义存在队形分支,可能是单个也可能是多个
simple方式:如果当前分支只有一个追踪分支,那个git push origin
到主机时,可以省略主机名。
matching方式:如果当前分支与多个主机存在追踪关系,那么git push --set-upstream origin master
将本地的master分支推送到origin主机(-set-upstream 选项会指定一个默认主机),同时指定该主机为默认主机,后面使用可以不加任何参数使用git push
注意
Git 2.0版本之前,默认采用matching方法,现在改为默认采用simple方式。
原因
1.可能是因为当前版本小于2.0
2.若不是版本问题则是因为当前分支与多个主机存在对应关系,而当前未指定对应关系
此时检查一下项目下.git的.config文件中是否缺少该分支指定信息