比如我们又一个历史提交A->B->C->D, 当前HEAD在D commit上,我们想要修改B,C commits,该怎么做呢?

我们知道用git commit --amend可以修改当前的提交D,但是之前的怎么办呢?

首先我们要修改的起点开始于最近的三次提交,告诉git:

1 git rebase -i HEAD~3

然后git会告诉你现在的status:

pick a1 message of a1

pick a2 message of a2

pick a3 message of a3

# Rebase a10d0f8..b5f4d0d onto a10d0f8

# p, pick <commit> = use commit

# r, reword <commit> = use commit, but edit the commit message

# e, edit <commit> = use commit, but stop for amending

# s, squash <commit> = use commit, but meld into previous commit

# f, fixup <commit> = like "squash", but discard this commit's log message

# x, exec <command> = run command (the rest of the line) using shell

# b, break = stop here (continue rebase later with 'git rebase --continue')

# d, drop <commit> = remove commit

# l, label <label> = label current HEAD with a name

# t, reset <label> = reset HEAD to a label

# m, merge [-C <commit> | -c <commit>] <label> [# <oneline>]

# . create a merge commit using the original merge commit's

# . message (or the oneline, if no original merge commit was

# . specified). Use -c <commit> to reword the commit message.

2 上边列出了你想要修改的命令, 比如我们只想修改最近三次的提交message:

reword a1 message of a1

reword a2 message of a2

pick a3 message of a3

3 然后退出并保存。

4 然后Git就会从commit B开始让你进行修改。然后按照正常的流程修改完毕就行。

5 最后可以git log看一下历史commit是否跟你的预期相符,好了,搞定了。

原文:http://blog.csdn.net/hongchangfirst/article/details/111056451

作者:hongchangfirst

hongchangfirst的主页:http://blog.csdn.net/hongchangfirst

三分钟教你学Git(二十七) - 修改多个commit相关推荐

  1. python语言表白超炫图形_经验分享 篇二:三分钟教你用Excel制作各种尺寸、底色的证件照...

    经验分享 篇二:三分钟教你用Excel制作各种尺寸.底色的证件照 2018-12-29 07:00:00 654点赞 7174收藏 245评论 一.前言 继上一篇用PPT制作了证件照以后 有的值友反应 ...

  2. 三分钟教你快速选择机器视觉传感器

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自|新机器视觉 六招教您合理选择机器视觉传感器 传感器是一种 ...

  3. C#三分钟教你理解DataTable、Datarow、DataColumn的关系以及用法

    C#三分钟教你理解DataTable.Datarow.DataColumn的关系以及用法! 码字不易,点赞关注加收藏,谢谢各位看官老爷了!!!!. 码字不易,点赞关注加收藏,谢谢各位看官老爷了!!!! ...

  4. tree老师:每天五分钟教你学linux基础命令02

    tree老师:每天五分钟教你学linux基础命令02 ls ls命令用于列出文件和目录.默认上,他会列出当前目录的内容.带上参数后,我们可以用ls做更多的事情.  比如,当我们刚刚改了文件,却不记得是 ...

  5. 教妹学Java(二十一):一文带你了解面向对象编程的所有概念

    你好呀,我是沉默王二,是<Web 全栈开发进阶之路>的作者,CSDN 的博客之星.<教妹学 Java>是一套非常有趣的付费专栏,除了继续保持幽默风趣的行风风格,我还力求把每一个 ...

  6. 教妹学Java(二十二):来吧,一文彻底搞懂Java命名约定

    你好呀,我是沉默王二,是<Web 全栈开发进阶之路>的作者,CSDN 博客之星.<教妹学 Java>是一套非常有趣的付费专栏,除了继续保持幽默风趣的行风风格,我还力求把每一个知 ...

  7. 教妹学Java(二十):一文带你彻底了解 Java 中的注释,干货了

    你好呀,我是沉默王二,一枚颜值与才华俱在的程序员.本篇教程通过我和三妹对话的形式来谈一谈"Java 中的注释". 教妹学 Java,没见过这么有趣的标题吧?"语不惊人死不 ...

  8. 元件怎么反转_电气图纸怎么看?三分钟教你学会看懂,受用一生

    图纸一般用于设计方面,设计师绘制出图纸,我们再根据图纸进行操作,尤其是电气图纸,上面有很多符号,很难看懂,下面通过三分钟教你学会看懂电气图纸. 一.什么是电气图 用电气图形符号.带注释的围框或简化外形 ...

  9. 真假屏幕测试软件,别再担心电视屏幕问题了!三分钟教你在家自己检测

    原标题:别再担心电视屏幕问题了!三分钟教你在家自己检测 在很多用户的概念中,买电视最重要的就是要看电视屏幕好不好,一般来说,屏幕越好,那么电视所表现出来的画质也会更出色.然而在选购了新的电视机后,我们 ...

最新文章

  1. layer output 激活函数_深入理解YOLO v3实现细节 - 第3篇 构建v3的Loss_layer
  2. asp 表格渐变颜色_加班到半夜,同事却用WPS表格小技巧10分钟搞定工作!
  3. html css js 实战案例_使用html+css+js实现弹球游戏
  4. IBASE structure
  5. 属性加密测试用例相关问题的分析
  6. Django的models操作
  7. 关于mysql ERROR 1045 (28000)错误的解决办法
  8. 世界首富洛克菲勒的6句忠告,每个字都值钱
  9. 力扣—— 79/212. 单词搜索
  10. IE6 position:fixed bug (固定窗口方法)
  11. 半导体物理学——(一)半导体中的电子状态
  12. MapReduce实现QQ好友推荐
  13. Windows 10 修改域用户密码
  14. 代码英雄:操作系统之战
  15. 常见的计算机网络安全威胁的表现形式,网络安全威胁的的表现形式有哪些?
  16. ubuntu18安装详细教程
  17. 使用多个路由器有线桥接实现无线漫游/Lan口连接
  18. 在c语言中int i k d,c语言int *pInt=(int *)d; 什么意思?
  19. 全志F1C100s主线linux入坑记录 (1)linux系统移植
  20. 请你谈谈为什么分布式系统需要限流器

热门文章

  1. 如何彻底屏蔽微信消息,屏蔽方法分享
  2. PCA(主元分析)的数学原理
  3. 高手用Python一键生成微信好友头像墙
  4. 云计算行业的相关技术知识,主要有哪些?
  5. 2022年湖北省孝感市中级工程师职称申报什么时候开始?需要提供什么资料呢?
  6. cn域名不备案(cn域名必须备案么)
  7. 3d游戏建模制作流程详解 丨漫威宇宙【万磁王】
  8. 快速应用RT-Thread IAP升级功能
  9. 二叉树前中后层遍历(递归/非递归)(简单易懂(*^ー^))
  10. 高频滤波电路(电源那里的一大一小两个电容)