两种情况:

1.已经将代码push到远程仓库

2.还没将代码push到远程仓库,还在本地的仓库中

这两种情况下的修改大体相同,只是第一种情况最后会多一步

下面来说怎么修改

先搞清楚你要修改哪次的提交注释或者哪几次的提交注释

修改最后一次注释

如果你只想修改最后一次注释(就是最新的一次提交),那好办:

git commit --amend

出现有注释的界面(你的注释应该显示在第一行), 输入i进入修改模式,修改好注释后,按Esc键 退出编辑模式,输入:wq保存并退出。ok,修改完成。

例如修改时编辑界面的图:

 
编辑commit注释.png

修改之前的注释

修改之前的某次注释

  1. 输入:

    git rebase -i HEAD~2

    最后的数字2指的是显示到倒数第几次 比如这个输入的2就会显示倒数的两次注释(最上面两行)

     
    显示倒数两次的commit注释.png
  2. 你想修改哪条注释 就把哪条注释前面的pick换成edit。方法就是上面说的编辑方式:i---编辑,把pick换成edit---Esc---:wq.

  3. 然后:(接下来的步骤Terminal会提示)

    git commit --amend

  4. 修改注释,保存并退出后,输入:

    git rebase --continue

     
    提示输入的命令.png

其实这个原理我的理解就是先版本回退到你想修改的某次版本,然后修改当前的commit注释,然后再回到本地最新的版本

修改之前的某几次注释

修改多次的注释其实步骤和上面的一样,不同点在于:

  1. 同上
  2. 你可以将多个想修改的commit注释前面的pick换成edit
  3. 依次修改你的注释(顺序是从旧到新),Terminal基本都会提示你接下来的操作,每修改一个注释都要重复上面的3和4步,直到修改完你所选择的所有注释

已经将代码push到远程仓库

首先,你把最新的版本从远程仓库先pull下来,修改的方法都如上,最后修改完成后,强制push到远程仓库:

git push --force origin master

注:很重要的一点是,你最好保证在你强制push之前没有人提交代码,如果在你push之前有人提交了新的代码到远程仓库,然后你又强制push,那么会被你的强制更新覆盖!!!

最后,可以检查一下远程的提交记录~~

作者:筱湮
链接:https://www.jianshu.com/p/098d85a58bf1

最新文章

  1. Nop源码分析二
  2. 智慧城市的【Auth】登录对象
  3. yum阿里云镜像源
  4. 常用JS效果 不断进步贴 不停更新~ 纪念用~
  5. Ubuntu编译源码程序依赖查找方法
  6. 透过proxy进行docker pull(Centos6.8)
  7. 系统巡警 v1.2 系统行为分析神器
  8. 1030-ACM程序设计之马拉松竞赛
  9. oracle 不转义 &
  10. Do not wait until the conditions are perfect to begin. Beginning makes the conditions perfect(转)
  11. MongoDB【第二篇】集群搭建
  12. jquery自带的方法
  13. You have an error in your SQL syntax; check the manual that corresponds to your MySQL server versio
  14. vue cli搭建项目
  15. Windows & RabbitMQ:安装
  16. Confluence 6 配置 Office 连接器选项
  17. Flink实战(1) - Apache Flink安装和示例程序的执行
  18. Linux之 Ngnix
  19. POJ3287(BFS水题)
  20. jquery滚动条平滑滑动

热门文章

  1. [转载]解决虚拟机中Centos7出现错误:Failed to start LSB: Bring up/down networking
  2. c++ 的学习 第二集函数的重载之3 -利用IDA分析bebug里面
  3. 鸿蒙内核源码分析(线程概念篇) | 是谁在不停的折腾CPU? | 百篇博客分析OpenHarmony源码 | v21.06
  4. Ybt#452-序列合并【期望dp】
  5. try catch中的return与finally
  6. Linux 下 xargs 命令
  7. CF1082G Petya and Graph(最小割,最大权闭合子图)
  8. SpringMVC 数据响应
  9. float 与 double 类型区别
  10. [no_code][Beta]测试报告