Git 报错 Updates were rejected because the remote contains work that you do

1 篇文章 0 订阅

目录

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                                      分支

这样就出现了标题提示的错误信息,如下图:image-20210604105941769

经过多次出现同样的问题,我已经对这个问题的原因了如指掌了,这是因为在本地新建库后,与远程仓库的内容不一致导致的(远程仓库有一些内容本地没有)。问题了如指掌,但是解决方法每次都记错,所以还是记录一下吧。

正确的提交过程如下:

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                                    分支

 

在执行上面第五步的时候可能会出现新的错误,也是常见的错误了,错误信息如下:image-20210604110514047

不要慌,这是因为文件版本没有及时更新,两个分支是两个不同的版本,具有不同的提交历史,决绝方式就是在原本的命令之后加上一句命令即可:

git pull origin master --allow-unrelated-histories

然后有的情况下,输入上面的命令就能解决问题,有的情况下,他又会报新的错误,如下:

image-20210604110855717 

网上查了解决办法是真的麻烦,但是原因知道了,就是有文件冲突,没有更新,那就好办了,重新输入以下命令问题解决:

 image-20210604111243288

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博客

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
"hint: updates were rejected because the remote contains work that you do hin"的意思是"提示:更新被拒绝,因为远程存储库包含您已经有的工作"。 当我们想要将本地的更新推送到远程存储库时,有时会遇到这样的错误提示。这个错误通常发生在我们尝试将本地分支的更改合并到远程分支时。提示意味着在我们推送更新之前,远程分支已经存在了我们本地已经有的一些工作。 出现这个问题的原因可能是由于其他用户或者团队成员在我们尝试推送更新之前,已经先行推送了一些更改到远程分支。这种情况下,我们的本地分支就会落后于远程分支的变更。为了避免冲突,Git会拒绝我们的推送。 解决这个问题的方法通常有以下几种: 1. 拉取最新更改:使用`git pull`命令,从远程仓库拉取最新的更改。这将合并远程分支的更改到我们的本地分支。 2. 解决冲突:如果`git pull`产生了冲突,在Git的冲突标记中手动解决冲突,合并我们的更改与远程更改。 3. 强制推送:如果我们明确知道我们的本地更改是合理的,并且我们不关心丢失远程更改,可以使用`git push -f`命令来强制推送本地更改。但是,这种方法可能会导致远程分支的代码丢失,因此应谨慎使用。 总结起来,出现"hint: updates were rejected because the remote contains work that you do hin"的错误提示,意味着我们的本地分支在推送之前和远程分支发生了冲突。我们可以通过拉取最新更改、解决冲突或强制推送来解决该问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wcybaonier

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值