Git提交规范

需制定统一标准,提交记录清晰明了,让团队一看就能知道此次提交的目的,减少时间成本。规范的git提交,方便接入版本日志自动化处理系统。

phpstorm安装 git commit message helper 插件步骤:

  1. file -> settings
  2. plugins 搜索安装
  3. 通过phpstorm提交时,点击图示图标填写记录。

Git提交规范

格式规范解析

Git提交规范

Header 头只有一行,包括3个字段: type(必需), scope(可选), subject(必需)

Git提交规范

type类型属性

  • feat 新功能
  • fix 修改bug
  • docs 文档修改
  • style 格式修改
  • refactor 重构
  • perf 性能提升
  • test 测试
  • build 构建系统
  • ci 对CI配置文件修改
  • chore 修改构建流程或增加依赖库、工具
  • revert 回滚版本

常见的 subject 种类以及含义如下:

  1. feat: 新功能(feature)

    用于提交新功能。
    例如:feat: 增加用户注册功能

  2. fix: 修复 bug

    用于提交 bug 修复。
    例如:fix: 修复登录页面崩溃的问题

  3. docs: 文档变更

    用于提交仅文档相关的修改。
    例如:docs: 更新README文件

  4. style: 代码风格变动(不影响代码逻辑)

    用于提交仅格式化、标点符号、空白等不影响代码运行的变更。
    例如:style: 删除多余的空行

  5. refactor: 代码重构(既不是新增功能也不是修复bug的代码更改)

    用于提交代码重构。
    例如:refactor: 重构用户验证逻辑

  6. perf: 性能优化

    用于提交提升性能的代码修改。
    例如:perf: 优化图片加载速度

  7. test: 添加或修改测试

    用于提交测试相关的内容。
    例如:test: 增加用户模块的单元测试

  8. chore: 杂项(构建过程或辅助工具的变动)

    用于提交构建过程、辅助工具等相关的内容修改。
    例如:chore: 更新依赖库

  9. build: 构建系统或外部依赖项的变更

    用于提交影响构建系统的更改。
    例如:build: 升级webpack到版本5

  10. ci: 持续集成配置的变更

    用于提交CI配置文件和脚本的修改。
    例如:ci: 修改GitHub Actions配置文件

  11. revert: 回滚

    用于提交回滚之前的提交。
    例如:revert: 回滚feat: 增加用户注册功能

scope作用范围

  • scope说明提交影响范围:一般是修改的什么模块或者是什么功能,如【xx模块】/【xx功能】

subject 提交主题

  • 一般是5-10各自简单描述做的任务,如【xx模块加入消息队列】

body 说明提交详细描述:对于功能详细的描述,解释为什么加入这段代码,为什么调整优化等,如因分布式锁问题,导致死锁问题,优化调整xxxx

Footer 脚包括2个字段: Breaking Changes、Closed Issues

  • Breaking Changes 当前版本与之前版本不兼容,如迭代升级对之前版本不能做到兼容,就需要在Breaking Changes后面描述变动理由和迁移方法之类,此属性不常用。
  • Closed Issues 当前 commit提交针对某个issue问题或者是禅道bug编号等,如Closes # 234

Tags: 笔记

添加新评论