git push后出现错误 ![rejected] master -; master(non-fast-forward)

Posted 清和时光

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了git push后出现错误 ![rejected] master -; master(non-fast-forward)相关的知识,希望对你有一定的参考价值。

我们提交代码git push后出现如下错误提示

$ git push -u origin master
To https://gitee.com/xxxxx/vue_shop.git
 ! [rejected]        master -> master (non-fast-forward)
error: failed to push some refs to \'https://gitee.com/xxxxx/vue_shop.git\'
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: \'git pull ...\') before pushing again.
hint: See the \'Note about fast-forwards\' in \'git push --help\' for details.

原因

Git仓库中已经有一部分代码,所以它不允许你直接把你的代码覆盖上去。
远程仓库和本地仓库存在差异。
一般都是因为你在码云创建的仓库有ReadMe文件,而本地没有,造成本地和远程的不同步,

解决方法:

方法一、同步

1、git pull origin master --allow-unrelated-histories //把远程仓库和本地同步,消除差异
2、重新add和commit相应文件
3、git push origin master
4、此时就能够上传成功了

如果只是因为本地没有ReadMe文件,那么就在本地生成一个

git pull --rebase origin master  //本地生成ReadMe文件
git push origin master

方法二:强推

即利用强覆盖方式用你本地的代码替代git仓库内的内容

git push -f origin master

该命令会强制上传覆盖远程文件,慎用
方法三、

先把git的东西fetch到你本地然后merge后再push

git fetch
git merge

以上是关于git push后出现错误 ![rejected] master -; master(non-fast-forward)的主要内容,如果未能解决你的问题,请参考以下文章

IDEA使用Git出现push to origin/master was rejected错误解决方案

Push rejected: Push to origin/master was rejected

提交代码出现 Push to origin/master was rejected 错误解决方法

git丨Push rejected: Push to origin/master was rejected

git问题--Push rejected: Push to origin/master was rejected

push to origin/master was rejected错误解决方案