当前位置: 首页 > article >正文

GIT使用git push后遇到报错的解决办法

一、问题描述

在将本地的代码push到远程分支时提示提交失败。

二、问题原因

我们多次(超过一次)commit代码,并且git pull和git pull --rebase混用更新代码时,可能就会出现这个错误。

例如:

1:首先拉取远程分支的代码。

2:写自己的逻辑,写完之后准备提交代码。

3:git add->git commint->git push的时候首先要pull(拉取远端最新的代码)。于是git pull –rebase。

4:由于项目紧张继续写自己的业务,然后add commit, git pull 这时候就不能正常push了,因为混用了git pull 和git pull --rebase两种拉取代码的方式。

三、注意事项

 拉取分支的变动的两种方式

 merge:这种方式会生成一个你本地和远程合并的提交。

 rebase:这种方式会产生编辑操作(这种方式会改变你本地的提交历史,你本地的提交会在远端的基础上在进行提交)。

注意:拉取远端代码的时候要注意你自己需要明确你应该用什么方式去拉取远端代码,如果你的commit次数过多的话,rebase会基于你的提交次数进行代码合并。这里需要注意如果你的多次提交都改变了一个文件,并且这个文件合并的时候还有冲突的话,你需要解决很多次冲突。而merge方式会基于你最好一次提交的代码进行合并,只需要解决一次冲突。

四、解决措施

1:git log查看提交记录的版本信息

找到上方版本号,下面是你需要会退到的版本(即你没有提交代码的版本)

2:git reset --soft bf59xxxxxxxxxx71e

这里注意一定是soft,否则你的代码就都没有了。

3:git pull –rebase拉取远程分支代码

4:拉取代码提示错误

这时候需要保证你本地分支的干净(没有你添加的代码)

git stash(保存本地的任务进度,保存暂存区(我们add的更改内容)和工作区(我们通过IDE上更改的文件目录))

5:git pull –rebase拉取远程分支代码

6:git stash pop恢复本地任务

7:git add->git commit->git push继续提交你修改的代码


http://www.kler.cn/a/591922.html

相关文章:

  • centos 7误删/bash 拯救方法
  • Jackson 库进行 JSON 序列化时遇到了 ‌无限递归(Infinite Recursion)‌ 问题
  • LabVIEW烟气速度场实时监测
  • Qt常用控件之Layout总篇
  • 科技引领品质生活:三星生活家电用AI开启衣物洗护新纪元
  • 笔记本电脑关不了机是怎么回事 这有解决方法
  • Vue3 + ECharts 数据可视化实战指南
  • NAT技术-初级总结
  • java面试题之多线程
  • ViT、DETR 和 Swin Transformer :基于 Transformer 的计算机视觉(CV)模型
  • k8s中PAUSE容器与init容器比较 local卷与hostpath卷比较
  • docker-compose install nginx(解决fastgpt跨区域)
  • ModBus TCP/RTU互转(主)(从)|| Modbus主动轮询下发的工业应用 || 基于智能网关的串口服务器进行Modbus数据收发的工业应用
  • 基于SpringBoot的在线拍卖系统
  • RK3568笔记七十九:Web通信处理
  • 清华大学第12弹:《DeepSeek政务应用场景及解决方案》
  • 7种数据结构
  • 生成PDF文件:从html2canvas和jsPdf渲染到Puppeteer矢量图
  • 鸿蒙路由 HMRouter 配置及使用 三 全局拦截器使用
  • SWPU 2021 新生赛