目录
Git 报错 Updates were rejected because the remote contains work that you do
1、命令行出现这种情况
2、idea出现同样的报错,解决方式同上
Git 报错 Updates were rejected because the remote contains work that you do
这个报错实在是让我受不了了,每次不管是‘命令行’ 还是 idea 提交都会出现这样让人心态爆炸的问题。然而每次出现又重复的查找解决办法,这次实在受不了了,便有了这篇文章,希望它也能帮助到心态爆炸的你。
1、命令行出现这种情况
命令行执行会出现这样的问题是因为错误的提交过程:
git init //初始化仓库
git add .(文件name) //添加文件到本地暂存
git commit -m “first commit” //添加文件描述信息
git remote add origin 远程仓库地址 //链接远程仓库
git push -u origin master //把本地仓库的文件推送到远程仓master 分支
这样就出现了标题提示的错误信息,如下图:
经过多次出现同样的问题,我已经对这个问题的原因了如指掌了,这是因为在本地新建库后,与远程仓库的内容不一致导致的(远程仓库有一些内容本地没有)。问题了如指掌,但是解决方法每次都记错,所以还是记录一下吧。
正确的提交过程如下:
git init //初始化仓库
git add .(文件name) //添加文件到本地
git commit -m “first commit” //添加文件描述信息
git remote add origin 远程仓库地址 //链接远程仓库
git pull origin master // 把本地仓库的变化连接到远程仓库master 分支
git push -u origin master //把本地仓库的文件推送到远程仓库master 分支
在执行上面第五步的时候可能会出现新的错误,也是常见的错误了,错误信息如下:
不要慌,这是因为文件版本没有及时更新,两个分支是两个不同的版本,具有不同的提交历史,决绝方式就是在原本的命令之后加上一句命令即可:
git pull origin master --allow-unrelated-histories
然后有的情况下,输入上面的命令就能解决问题,有的情况下,他又会报新的错误,如下:
网上查了解决办法是真的麻烦,但是原因知道了,就是有文件冲突,没有更新,那就好办了,重新输入以下命令问题解决:
2、idea出现同样的报错,解决方式同上
输入命令的地方在 idea 的下方,有一个 terminal ,点击之后,即可输入上面的命令。
再说一种我的报错:
背景是现在要从将代码一个代码库迁移到另一个代码库,组长给了一个新的地址,让我去推代码,然后也是因为远程master和本地master没有共同的提交历史(说白了就是没有共同的祖宗,不是亲兄弟,哈哈哈),用下面这个命令执行后,在提交推送就可以了,大致意思是就是不在意有没有共同的根...
git pull origin master --allow-unrelated-histories
摘选: Git 报错 Updates were rejected because the remote contains work that you do_很萌の萌新的博客-CSDN博客