0 前言
这是我在使用git提交代码到GitHub上时遇到的一个报错,刚遇到此问题,内心充满了恐惧,不知如何解决,花了不少时间查资料,因此有必要在此记录一下,同时希望可以为读者提供一定参考。
1 该错误出现的时期
在远程创建空仓库,然后本地写一些代码,尝试提交到远程时,出现标题所指的错误。
2 原因
其实就是代码冲突,因为我提交的是子文件里的代码,远程有与其并列的子文件的代码,然后我又创建一个子文件,尝试提交远程就导致了远程和本地代码不一致情况(也即冲突)。
场景一
你 commit 了你修改的代码,但是别人在你修改期间 push 了最新代码,此时你再 push 就会因为代码冲突报错
没懂不要紧,下面用图片再演示一遍
- 远程库添加绿色更新,但本地没有同步
- 本地库添加红色更新,并想提交到远程库,冲突导致失败
git pull –rebase origin master 意为先取消 commit 记录,并且把它们临时 保存为补丁**(patch)(这些补丁放到 ”.git/rebase**”目录中),之后同步远程库到本地,最后合并补丁到本地库之中。
- 此时使用git pull --rebase origin main
- 接下来就可以把本地库 push 到远程库当中了。
场景二
我发现网上还有这样一种原因:创建仓库时,勾选了README.MD文件,因为勾选后,当点击创建仓库时,它会帮我们做一次初始提交,因此我们在关联本地与远程时,两端都是有内容的,但是这两份内容并没有联系,当我们推送到远程或者从远程拉取内容时,都会有没有被跟踪的内容,于是你看git报的详细错误中总是会让你先拉取再推送,但是拉取总是失败。
于是我通过对照实验进行验证,果然报错!
-
github上创建带有README.MD的仓库
-
创建空项目
-
随便print一下
然后我对照一下创建一个空仓库验证一下
-
github上创建空仓库
-
重新添加远程库test2
-
提交成功
通过对照实验,可以看出创建带有README.MD文件的仓库,提交代码时也会导致代码冲突,报出标题所示的错误。
总结
以上便是笔者分享的全部内容喽! 笔者主要分享了git报错can’t push refs to remote. Try running “Pull” first to integrate to your changes的原因:代码冲突, 希望本篇博客能够帮到读者,谢谢大家的观看!感谢!
参考
-
https://huaweicloud.csdn.net/63a570e1b878a545459474b0.html?spm=1001.2101.3001.6661.1&utm_medium=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7Eactivity-1-109855178-blog-97565768.235%5Ev38%5Epc_relevant_anti_t3&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-2%7Edefault%7ECTRLIST%7Eactivity-1-109855178-blog-97565768.235%5Ev38%5Epc_relevant_anti_t3&utm_relevant_index=1
-
https://blog.csdn.net/k909397116/article/details/113385765?ops_request_misc=&request_id=&biz_id=102&utm_term=can%27t%20push%20refs%20to%20remote.%20Try&utm_medium=distribute.pc_search_result.none-task-blog-2allsobaiduweb~default-3-113385765.nonecase&spm=1018.2226.3001.4187文章来源:https://www.toymoban.com/news/detail-720344.html
-
https://blog.csdn.net/Ever69/article/details/97565768?spm=1001.2101.3001.6650.4&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-4-97565768-blog-123008513.235%5Ev38%5Epc_relevant_anti_t3&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-4-97565768-blog-123008513.235%5Ev38%5Epc_relevant_anti_t3文章来源地址https://www.toymoban.com/news/detail-720344.html
到了这里,关于git报错can‘t push refs to remote. Try running “Pull“ first to integrate to your changes的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!