Git中撤销中间的某次merge代码

简介: 在开发过程中发现分支中间某次merge存在dev代码,需要把这个merge去掉,但不影响后续的提交

问题

在开发过程中发现分支中间某次merge存在dev代码,需要把这个merge去掉,但不影响后续的提交

解决方案

坑点:网上说用【git revert】来实现,发现里面有个坑点,revert之后,假如想在后续再加入这个merge分支就不行,因为系统默认你已经合并过了,导致分支代码没法再次合并,超级麻烦

  1. 用【git reset】回到出错版本的上一个版本
git reset --hard 3c2af5a7 
  1. 用【git cherry-pick】把出错版本后面的commit合并进去
git cherry-pick 9dba07f4^..32aba548 ##出错版本后的第一个commit直至最新commit

或者使用单次合并

git cherry-pick 9dba07f4
  1. 如果在cherry-pick 的过程中出现了冲突 在处理冲突后,使用
git cherry-pick --continue

继续处理下一个分支 如果想中途退出cherry-pick,使用

git cherry-pick --abort
  1. 合并冲突后,使用强制推送把旧分支进行覆盖
git push origin HEAD:comitName --force


目录
相关文章
|
26天前
|
开发工具 git
使用Git根据日期进行代码版本切换的方法
通过以上步骤,可以有效地根据日期进行Git代码版本的切换。这种方法在需要回溯历史版本进行bug修复或功能复查时特别有用。Git的灵活性和强大功能使其成为现代软件开发不可或缺的工具之一。
242 103
|
5月前
|
存储 安全 开发工具
深度解决 Git “fatal: refusing to merge unrelated histories” 错误解析什么是历史分支优雅草卓伊凡
深度解决 Git “fatal: refusing to merge unrelated histories” 错误解析什么是历史分支优雅草卓伊凡
414 4
深度解决 Git “fatal: refusing to merge unrelated histories” 错误解析什么是历史分支优雅草卓伊凡
|
2月前
|
开发工具 git
Git版本控制工具合并分支merge命令操作流程
通过以上步聚焦于技术性和操作层面指南(guidance), 可以有效管理项目版本控制(version control), 并促进团队协作(collaboration).
350 15
|
4月前
|
API 开发工具 git
使用git pull遇到Automatic merge failed; fix conflicts and then commit the result.解决方案卓伊凡
使用git pull遇到Automatic merge failed; fix conflicts and then commit the result.解决方案卓伊凡
219 0
使用git pull遇到Automatic merge failed; fix conflicts and then commit the result.解决方案卓伊凡
|
4月前
|
数据可视化 Java 测试技术
Git Flow 现代实操指南含从代码提交到 CI/CD 全流程的实用技巧与长尾关键词解析 Git Flow
本指南结合现代技术趋势,详解Git Flow工作流,涵盖GitHub Actions自动化、Conventional Commits规范、Gitmoji可视化等内容,助你实现代码到CI/CD的全流程管理,提升团队开发效率与代码质量。
283 2
|
6月前
|
网络安全 开发工具 git
Git仓库创建与代码上传指南
本教程介绍了将本地项目推送到远程Git仓库的完整流程,包括初始化本地仓库、添加和提交文件、创建远程仓库、关联远程地址及推送代码。同时,还提供了`.gitignore`配置、分支管理等可选步骤,并针对常见问题(如认证失败、分支不匹配、大文件处理及推送冲突)给出了解决方案。适合初学者快速上手Git版本控制。
|
5月前
|
开发工具 git 索引
如何使用Git的暂存区来管理代码更改?
如何使用Git的暂存区来管理代码更改?
908 0
|
5月前
|
安全 开发工具 git
git的常用操作命令
git的常用操作命令
360 57