Git push命令报hint: Updates were rejected because the remote contains work that you do问题:

当我们开开心心的把代码写完,想要上传到git代码管理平台(远程仓库)时,突然报个这个错误,一整天的好心情都毁了。不用着急,我们来对它分析一波:
在这里插入图片描述
提示:更新被拒绝,因为远程包含您所做的工作
提示:不要在本地使用。这通常是由另一个存储库推送引起的
提示:对于相同的ref。您可能需要首先集成远程更改
提示:(例如,“git pull…”)然后再次按下。
提示:有关详细信息,请参阅“git推送-帮助”中的“关于快进的说明”

首先它的出现是因为在你上传的时候,远程仓库中有着本地仓库没有的文件造成的,我们首先想到的就是,既然没有那就把它拉取下来我不就有了吗?
试试,当我们pull命令输完,以为结束了,没想到它又报错了,refusing to merge unrelated histories(拒绝合并不相关的历史)。
在这里插入图片描述
这时我们需要在pull命名后加入一行参数就可以解决了。

--allow-unrelated-histories (该选项可以合并两个独立启动仓库的历史)

具体代码如下:
git pull origin master --allow-unrelated-histories

我们再次对它产生的原因分析一波发现,首先它的出现是因为在你上传的时候,远程仓库中有着本地仓库没有的文件,及导致本地仓库和远程有不同的开始点,也就是两个仓库没有共同的 commit 出现的无法提交。
至此大部分人的问题都能解决,但是可能还会出现别的问题,而下面这个问题我也不太清楚,所以推荐一篇文章给大家:

https://blog.csdn.net/liulei952413829/article/details/117553977?spm=1001.2014.3001.5502

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐