git回退某条/多条提交记录

cpp 复制代码
git log --oneline   查看提交记录   找到要回退的前缀编码
git revert xxxx   针对普通的单次提交记录
git revert -m 1 xxxx  针对getMerage的提交记录

如果你有 多条不想要的提交 ,并且已经合并推送到远程,那么依旧不能用 reset(会把后面的提交都干掉)。

正确做法仍然是:逐条用 git revert****撤销这些不想要的 commit

下面给你几种情况的处理方式。


情况 1:多条普通提交(不是 merge)

比如你要撤销这几条:

复制代码
a8  
a5  
a3

直接逐条执行:

复制代码
git revert a8
git revert a5
git revert a3

然后:

复制代码
git push

顺序建议 从后往前 (从日志上方往下),避免冲突几率。


情况 2:要撤销的提交中有 merge commit

Merge xxx****的就是 merge commit。

撤销时要加 -m 1**,例如:**

复制代码
git revert -m 1 <merge_commit_id>

多个 merge 也一样,一个一个来。


情况 3:要撤销的提交是连续的(例如第 2、3、4 条都不要)

不用一条一条 revert,可以一次性 revert 一个区间:

找到这个区间最早的提交 old_commit****和最晚的 new_commit**。**

比如:

复制代码
a6  
a5  
a4  ← 不想要
a3  ← 不想要
a2  ← 不想要
a1

执行:

复制代码
git revert a2..a4

它会自动生成多个 revert commit。

然后:

复制代码
git push
相关推荐
二宝哥6 小时前
大数据之yum安装git
git
牛奶咖啡137 小时前
Git实践——git远程仓库操作
git·git远程仓库的创建·github创建仓库·git将本地仓库推送到远程仓库·使用git克隆远程仓库到本地·git分支的创建与合并·git冲突的产生与解决
随风,奔跑8 小时前
Git学习笔记
笔记·git·学习
Gary Studio9 小时前
Git vscode 插件推荐
ide·git·vscode
StackNoOverflow10 小时前
IDEA + Git + Gitee 全流程实战:从安装、提交到解决冲突
git·gitee·intellij-idea
淘矿人1 天前
从0到1:用Claude启动你的第一个项目
开发语言·人工智能·git·python·github·php·pygame
lpfasd1231 天前
Git/Gitee/GitHub 3 个安全凭证详解
git·gitee·github
李日灐1 天前
< 7 > Linux 开发工具:git 版本控制器 和 cgdb/gdb 调试器
linux·运维·服务器·开发语言·git·调试器·gdb/cgdb
Gust of wind1 天前
idea结合git和Gitee的初步使用
git·gitee·intellij-idea
夜七少eleanor1 天前
【Git】2026全图文详解安装教程
git