git 如何撤销已经 push 的 merge

今天在合并代码时, 发现自己失误把另外一个分支 B 的代码合并到了自己分支 C, 于是想到要撤销这次 merge

一般地, 如果我们想要撤销某次 commit 可以 git revert <commit-id>. 然而, 对于 merge 类型的 commit 不能直接 git revert <commit-id>

这里举个例子:

我们错误地把 master 合并到 feature/2022-03-02-revert, 目前想要撤销这次 merge

正确的做法如下:

  1. 确保当前处于需要撤销合并的那个分支 feature/2022-03-02-revert
  2. git log -1 找到这次 merge 的 commit-id
  1. git revert 94a525c2 -m 1 这里 -m 1 表示以我们当前的所处分支 feature/2022-03-02-revert 为主线分支

  2. shift zz 保存

参考文章:

里面有未push的情况下,如何处理撤销merge操作

Git如何撤销merge操作_git 取消merge-CSDN博客

相关推荐
A_Lonely_Cat2 天前
记一次 GitHub 幽灵协作者大清洗:强制重写 Git 历史与穿透 CDN 缓存实践
git·github
和你看星星4 天前
Git rerere:让重复冲突只解决一次
git
嘻嘻仙人8 天前
Ubuntu中 git上传自己的项目和二次上传一般流程
git·github
Patrick_Wilson8 天前
Squash Merge 的血缘陷阱:为什么删掉的代码又活了过来
前端·git·程序员
沉浸学习的匿名网友8 天前
什么是 .gitignore?为什么每个 Git 项目几乎都离不开它?
前端·git
深海鱼在掘金9 天前
Git 完全指南 —— 第3章:理解工作区、暂存区、版本库三个核心
git
江华森9 天前
Git 基础筑基:从原理到团队协作的全栈实战
git
JakeJiang9 天前
Git 必备命令指南:从日常高频到项目开发实战
git
叫我少年10 天前
Windows 中安装 git
git
深海鱼在掘金15 天前
Git 完全指南 —— 第1章:Git 概览与版本控制演进
git