git 修改历史 commit message

目录

  • 1,修改当前的
  • 2,修改历史的
    • 1,先查看 log
    • 2,开始修改
  • 3,其他注意点
    • 1,中途不想修改了
    • 2,commit ID 会发生变化
    • 3,推送远程
    • 4,精准定位

1,修改当前的

直接使用下面的命令,如果打开的是 vim 编辑器,先切换到英文输入法,

键入 i 开始编辑(编辑完后也记得转为英文输入法),

再键入 Esc 结束编辑并键入 :wq 保存退出即可。

git commit --amend

2,修改历史的

步骤:

1,先查看 log

git log --oneline
# 查看前 3 步的 log
git log --oneline -3

在这里插入图片描述

2,开始修改

通过 rebase 变基实现

查看最近的3次提交:

git rebase -i HEAD~3

当通过查看 log 定位出要修改的 commit 的位置后,就可以进行修改。

比如要修改倒数第3次提交,将想要修改的 commit 对应的 pick 改为 er (2个都可以)。然后退出编辑并保存。

下面展示后续操作的是修改为 e 的操作,修改为 r 的后续操作类似。

在这里插入图片描述

注意此时的状态没有再某个分支上,而是在【ee38286a】的这次 commit 上:

在这里插入图片描述

此时,就可以执行 git commit --amend 来修改目标 commit message 了。

修改完后,执行 git rebase --continue 继续变基。因为刚刚设置了只修改一条 commit message,所以会直接到最后一步 Successfully:

在这里插入图片描述

此时当前状态也已经恢复:

在这里插入图片描述

3,其他注意点

1,中途不想修改了

如果在执行了 git rebase 之后,突然又不想修改了。那可以执行下面的命令退出变基操作:

git rebase --abort

2,commit ID 会发生变化

如果修改的是倒数第3个 commit。注意:从倒数第3~倒数第1的这3个 commit 的 ID 都会发生变化。

3,推送远程

无论是修改当前还是历史的,在本地做了修改之后,需要 git push -f 强制推送远程。

4,精准定位

如果想修改的 commit message 不是倒数第3次,而是倒数十几次,甚至更前,设置一个大的数字不太友好。

而且我们已经知道是哪个 commit 了,所以可直接定位。以下图为例:

在这里插入图片描述

如果想修改的就是 【ee38286 第3次提交】 这个 commit,可以:

git rebase ee38286^ --interactive

此时打开的编辑页面,第1个就是这个 commit。

注意 ee38286^ 这里有个 ^。如果没有它,那编辑页面显示的**第一个就是 【2992dec 第4次提交】这个 commit **。

后续操作相同。


以上。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/291395.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux实现m4a格式转换为wav格式

需要在linux上安装ffmpeg 参考博客 Linux上安装ffmpeg修改环境变量【这一点很重要,自己因为没有添加环境变量,捣鼓了很长时间】 将ffmpeg的绝对路径添加到 PATH 环境变量中,以让系统能找到ffmpeg的安装路径。 # /home//project/ffmpeg-6.1-a…

三个表的联合查询的场景分析-场景4:c表维护a和b表的id关联关系(一对多)

基础SQL演练,带详细分析,笔记和备忘。 目录 背景介绍 表数据 需求1:查询g表所有记录,以及关联的h的id 需求2:在需求1基础上,查出关联的h的其它字段(name) 需求3:在需…

【排序算法】希尔排序

文章目录 📝希尔排序( 缩小增量排序 )🌠分组思想🌠缩小增量的过程🌠 排序步骤🌉希尔排序的特性总结: 🚩总结 📝希尔排序( 缩小增量排序 ) 希尔排序是一种经典的排序算法&#xff0c…

Java复习第十三天学习笔记(HTML),附有道云笔记链接

【有道云笔记】十三 3.29 HTML https://note.youdao.com/s/Ru3zoNqM 一、基本标签 HTML:超文本标记语言 定义页面结构 CSS&#xff1a;层叠样式表 页面显示的样式、排版 BootStrap JS: JavaScript 界面交互(动态交互、逻辑) JQuery <!DOCTYPE html> <html> &l…

体育馆场地预约系统项目管理

1 前言 体育馆作为提供体育活动设施的重要场所&#xff0c;其使用和管理效率对于满足公众需求、提高体育活动质量具有重要意义。然而&#xff0c;传统体育馆场地预约方式仍然存在流程繁琐、效率低下等问题&#xff0c;已无法满足现代社会的需求。旨在提高体育馆的预约和管理效率…

WebGIS开发

1.准备工作 高德开发API注册账号&#xff0c;创建项目拿到key和密钥 高德key 2.通过JS API引入高德API <html><head><meta charset"utf-8" /><meta http-equiv"X-UA-Compatible" content"IEedge" /><metaname&quo…

人工智能 框架 paddlepaddle 飞桨 使用指南 使用例子 线性回归模型demo 1

安装过程&使用指南&线性回归模型 使用例子 本来预想 是安装 到 conda 版本的 11.7的 但是电脑没有gpu 所以 安装过程稍有变动,下面简单讲下 conda create -n paddle_env117 python=3.9 由于想安装11.7版本 py 是3.9 所以虚拟环境名称也是 paddle_env117 activa…

HTTP 与 HTTPS 的区别

基本概念 HTTP&#xff08;HyperText Transfer Protocol&#xff1a;超文本传输协议&#xff09;是一种应用层协议&#xff0c;主要用于在网络上进行信息的传递&#xff0c;特别是用于Web浏览器和服务器之间的通信。 它使用明文方式发送数据&#xff0c;这意味着传输的内容可…

C++中的STL简介与string类

目录 STL简介 STL的版本 STL的六大组件 string类 标准库中的string类 string类的常用接口 string类对象对容量的操作 size()函数与length()函数 capacity()函数 capacity的扩容方式 reserve()函数 resize()函数 string类对象的操作 push_back()函数 append()函数 operator()函数…

LLM推理入门指南②:深入解析KV缓存

在本系列文章《LLM推理入门指南①&#xff1a;文本生成的初始化与解码阶段》中&#xff0c;作者对Transformer解码器的文本生成算法进行了高层次概述&#xff0c;着重介绍了两个阶段&#xff1a;单步初始化阶段&#xff0c;即提示的处理阶段&#xff0c;和逐个生成补全词元的多…

【Go】六、函数

文章目录 1、函数的定义2、内存分析3、注意点4、函数数据类型5、自定义数据类型&#xff08;起别名&#xff09;6、支持对返回值命名 1、函数的定义 语法&#xff1a; func 函数名&#xff08;形参列表)&#xff08;返回值类型列表&#xff09;{执行语句..return 返回值列…

HarmonyOS实战开发-Stage模型下Ability的创建和使用

介绍 本篇Codelab基于Stage模型&#xff0c;对Ability的创建和使用进行讲解。首先在课程中我们将带领大家使用DevEco Studio创建一个Stage模型Ability&#xff0c;并使用UIAbilityContext启动另一个Ability&#xff0c;然后借助Want&#xff0c;在Ability之间传递参数&#xf…

.Net 知识杂记

记录平日中琐碎的.net 知识点。不定期更新 目标框架名称(TFM) 我们创建C#应用程序时&#xff0c;在项目的工程文件(*.csproj)中都有targetFramework标签&#xff0c;以表示项目使用的目标框架 各种版本的TFM .NET Framework .NET Standard .NET5 及更高版本 UMP等 参考文档&a…

云主机8核16G配置租用优惠价格1198元1年、4688元三年

京东云8核16G租用优惠价格1198元1年、4688元三年&#xff0c;配置为8C16G-270G SSD系统盘-5M带宽-500G月流量&#xff0c;华北-北京地域。京东云8核16G服务器活动页面 atengyun.com/go/jd 京东云8核16G租用优惠价格 京东云&#xff1a;轻量云主机CPU内存&#xff1a;8C16G公网带…

从TCP/IP协议到socket编程详解

​ 我的所有学习笔记&#xff1a;https://github.com/Dusongg/StudyNotes⭐⭐⭐ ​ 文章目录 1 网络基础知识1.1 查看网络信息1.2 认识端口号1.3 UDP1.4 TCP1.4.1 确认应答机制1.4.2 TCP三次握手/四次挥手为什么是三次握手为什么是四次挥手listen 的第二个参数 backlog—— 全…

【MySQL探索之旅】MySQL数据表的增删查改——约束

&#x1f4da;博客主页&#xff1a;爱敲代码的小杨. ✨专栏&#xff1a;《Java SE语法》 | 《数据结构与算法》 | 《C生万物》 《MySQL探索之旅》 |《Web世界探险家》 ❤️感谢大家点赞&#x1f44d;&#x1f3fb;收藏⭐评论✍&#x1f3fb;&#xff0c;您的三连就是我持续更…

A Little Is Enough: Circumventing Defenses For Distributed Learning

联邦学习的攻击方法&#xff1a;LIE 简单的总结&#xff0c;只是为了能快速想起来这个方法。 无目标攻击 例如总共50个客户端&#xff0c;有24个恶意客户端&#xff0c;那么这个时候&#xff0c;他需要拉拢2个良性客户端 计算 50 − 24 − 2 50 − 24 0.923 \frac{50-24-2}{…

主干网络篇 | YOLOv8更换主干网络之EfficientNet

前言:Hello大家好,我是小哥谈。EfficientNet是一种高效的卷积神经网络架构,由Mingxing Tan和Quoc V. Le在2019年提出,其设计思想是在不增加计算复杂度的情况下提高模型的准确性。它引入了一个称为"复合系数"的概念,该系数用于同时缩放网络的深度、宽度和分辨率。…

Qt 图形视图 /图形视图框架坐标系统的设计理念和使用方法

文章目录 概述Qt 坐标系统图形视图的渲染过程Item图形项坐标系Scene场景坐标系View视图坐标系map坐标映射场景坐标转项坐标视图坐标转图形项坐标图形项之间的坐标转换 其他 概述 The Graphics View Coordinate System 图形视图坐标系统是Qt图形视图框架的重要组成部分&#xf…

自定义类型:【联合体和枚举】

一.联合体 1.联合体类型的声明 联合体像结构体一样&#xff0c;也是有一个或者多个成员组成&#xff0c;当然也可以不同的类型。但不同的是&#xff0c;比编译器只为最大的成员分配足够的内存空间&#xff0c;所有成员共用同一块内存空间。所以联合体也叫做&#xff1a;共用体…