git 错误:failed to push some refs to

原文链接

问题说明

当我们在github版本库中发现一个问题后,你在github上对它进行了在线的修改;或者你直接在github上的某个库中添加readme文件或者其他什么文件,但是没有对本地库进行同步。这个时候当你再次有commit想要从本地库提交到远程的github库中时就会出现push失败的问题。

我在github库中对某个文件进行了在线的编辑,并且没有同步到本地库,之后我在本地库添加了文件test.txt,并想提交到github,出现以下错误:error:failed to push some refs to。

 

解决方案

这个问题是因为远程库与本地库不一致造成的,那么我们把远程库同步到本地库就可以了。
使用指令
注意:此处我使用的是master分支,请根据自己的开发分支更换分支。

git pull --rebase origin master

这条指令的意思是把远程库中的更新合并到本地库中,–rebase的作用是取消掉本地库中刚刚的commit,并把他们接到更新后的版本库之中。

如图:

下面我用图形象的解释下错误情况的发生和解决

 

git pull --rebase origin master意为先取消commit记录,并且把它们临时 保存为补丁(patch)(这些补丁放到".git/rebase"目录中),之后同步远程库到本地,最后合并补丁到本地库之中。

接下来就可以把本地库push到远程库当中了。

 

 

  如果在执行下列命令继续报错:

1
git pull --rebase origin master<em id="__mceDel" style="background-color: rgba(255, 255, 255, 1); font-family: "PingFang SC", "Helvetica Neue", Helvetica, Arial, sans-serif; font-size: 14px">  </em>

错误:The following untracked working tree files would be overwritten by merge

错误原因:些没有提交到暂存区的文件将被远程的仓库覆盖,请移动或移除这些文件。

1
git clean -d -fx

git clean -d -fx表示:删除 一些没有 git add 的 文件;

    git clean 参数 

    -n 显示将要删除的文件和目录;

    -x -----删除忽略文件已经对git来说不识别的文件

    -d -----删除未被添加到git的路径中的文件

    -f -----强制运行

 

posted @   -零  阅读(1751)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示