问题(Non-fast-forward)的出现缘由在于:git仓库中已经有一部分代码,因此它不容许你直接把你的代码覆盖上去。因而你有2个选择方式:git
git push –fwindows
若是你用的是Egit则能够在推送界面选择“Force Update All Specs”便可,以下图:服务器
$ git fetchfetch
$ git mergespa
这2句命令等价于.net
git pull插件
以下图:orm
lxml
解决方法:blog
1.在本地工程目录找到config文件打开编辑,若是你用的是Egit则能够经过:windows》preferences》team》git》configuration》repository Settings》open配置文件便可。
以下图:
2.在config文件中添加:
[branch "master"]
remote = origin
merge = refs/heads/master
以上的master要改成你要提交的分支。
3.再执行pull方法便可。
若是没对分支的配置文件中添加推送配置的话,则没法向服务器推送这个分支的。以下图:
解决这个问题须要在.get/config的文件中添加以下配置便可:
[remote"origin"]
push=refs/heads/dev:refs/heads/dev
这句话的意思是将本地的dev分支推送到服务器的dev分支,或者也能够经过可视化界面来操做,以下图:
在上图中的Sourceref:中选择本地要推送的分支,在Destinationref:中选择要推送到服务器上的分支,若是你想将这次的配置保存下来的话能够选择Save specifications in ‘origin’ configuration 复选框便可(选择此复选框会在config文件中自动添加push =refs/heads/dev:refs/heads/dev)。
推荐阅读: