git 修改commit信息以及提交
创始人
2024-11-10 04:34:30
0次

最近公司建立一些关于commit的检测机制,导致很多代码在远程合并的时候,提示commit内容有误,这就导致很多commit需要去修改
这里就记录,希望对大家有所帮助

1.只修改最近一条

 git commit --amend  

键入命令就可以修改了 这时候我们会进入到vim 界面
在这里插入图片描述
这里就是window系统按insert 键插入 修改 ,mac系统没有insert 就按字母 i 就可以进入到 vim的 编辑模式
在这里插入图片描述
然后开始修改内容 修改完自己 合适的commit之后呢 ,就 esc 返回 然后键入

:wq 

保存并返回即可,这样最近一条就被修改成功了

2.如果是要修改多条历史记录的情况下

首先

git log 

查看历史记录

在这里插入图片描述
比方说我们要改到这一条
这时候我们就键入命令

 git rebase -i  0ae22b7aee784931e882294cba25e7860a671131 

就进入到下一个界面了

 git rebase -i 

这个后接的就是 你要修改的commit的 下一条 commit编号
在这里插入图片描述
同样的操作 insert 插入 或者 i
这里有几种修改选择:

  1. pick:保留该 commit
  2. reword:保留该 commit,但我需要修改该commit的 Message
  3. edit:保留该 commit, 但我要停下来修改该提交(包括修改文件)
  4. squash:将该 commit 和前一个 commit 合并
  5. fixup:将该 commit 和前一个 commit 合并,但我不要保留该提交的注释信息
  6. exec:执行 shell 命令
  7. drop:丢弃这个 commit

这里有一点要注意 不要在 这里 进行 commit 内容的修改 会识别不到 匹配内容导致无法更改

按照实际需要去选择命令,我们这里需要的是 reword,用来修改 Message。
在这里插入图片描述
只去修改 你想要修改的 commit内容就好了 然后esc

:wq 

保存退出,就会逐个进入到你 刚才前面有 reword 的 commit 修改界面
在这里插入图片描述
然后逐个修改 :wq 保存就可以了

历史记录就可以提交了

假如你这里是在远程 拉下来的代码 提交到远程的时候会 提示代码冲突 因为 你本地的 commit 跟 git 仓库的 commit的记录是 不同的
如果你先 pull 再 push 这时候就本地的 commit 就会被线上的 commit记录全部覆盖 白改了
这时候就使用强制推送命令

git push --force --tags origin 当前分支名 

强制推送到远程分支并覆盖 这样了话 远程的commit也就被修改了

补充一下 commit 常见的类型 格式

提交必须以类型为前缀,该类型由动词、feat、fix 等组成,后跟冒号和空格

  1. build:影响构建系统或外部依赖项的更改(示例范围:gulp、broccoli、npm)
  2. ci:对 CI 配置文件和脚本的更改(示例范围:Travis、Circle、BrowserStack、SauceLabs)
  3. chore:不改变源代码或测试的更改,例如对构建过程、辅助工具和库的更改
  4. docs:仅文档发生变化
  5. feat:一个新功能
  6. fix: 一个错误修复
  7. perf:提高性能的代码更改
  8. refactor:既不修复错误也不添加功能的代码更改
  9. revert: 恢复某些内容
  10. style:不影响代码含义的更改(空格、格式、缺少分号等)
  11. test:添加缺失的测试或纠正现有的测试

例子

build: update npm dependency  ci: add circleci configuration file  docs: fix typo in foo.md and bar.md  perf: optimize database query for faster response times  feat: allow provided config object to extend other configs  fix: resolve issue with incorrect data rendering  refactor: reorganize code structure for better readability  style: format code according to Prettier standards  test: add unit tests for user authentication 

如果你想要更明确一点 可以指定范围

书写结构如下
范围是可选的支持多个范围

类型(范围?): 主题内容 
build(deps): upgrade packages  style(deps): remove whitespace in requirements.txt  feat(lang): add Chinese language 

相关内容

热门资讯

一分钟了解开挂工具!aapok... 一分钟了解开挂工具!aapoker辅助功能开透视工具,一直真的是有挂(揭秘有挂)一分钟了解开挂工具!...
一起来讨论开挂!八戒大厅辅助透... 一起来讨论开挂!八戒大厅辅助透视挂,天天酒都存在有外挂,本来今日头条1.八戒大厅 选牌创建新账号,点...
专业讨论开挂工具!德普之星辅助... 专业讨论开挂工具!德普之星辅助功能开透视工具,一直有挂(真实有挂)1、玩家可以在德普之星透视最简单三...
揭秘真相开挂!友友麻将辅助透视... 揭秘真相开挂!友友麻将辅助透视挂,顺欣茶楼是有外挂,果然有挂技术1、用户打开应用后不用登录就可以直接...
出现新变化辅助!越乡游义乌麻将... 出现新变化辅助!越乡游义乌麻将辅助透视挂,雀友会潮汕麻将真的是有外挂,确实有挂功能1、点击下载安装,...
盘点几款开挂插件!微扑克辅助功... 盘点几款开挂插件!微扑克辅助功能开透视工具,原来是有挂(存在有挂)暗藏猫腻,小编详细说明微扑克破解器...
最终开挂!洛阳杠兹辅助透视挂,... 最终开挂!洛阳杠兹辅助透视挂,边锋老友内蒙古麻将是有外挂,一直有挂教程小薇(辅助器软件下载)致您一封...
今日公布透视挂攻略!智星德州扑... 今日公布透视挂攻略!智星德州扑克辅助功能开透视工具,一直有挂(确实有挂)1、进入到智星德州扑克是否有...
此事引发广泛关注开挂!非凡娱乐... 此事引发广泛关注开挂!非凡娱乐辅助透视挂,凑一桌游戏确实有外挂,好像有挂实锤凑一桌游戏破解侠是真的助...
三分钟了解开挂脚本!wepok... 三分钟了解开挂脚本!wepoker辅助功能开透视工具,一直是有挂(有挂辅助)1、wepoker模拟器...