gitcommit标签03标签04标签05**


Commit message格式

  1. <type>(<scope>): <subject>
  2. <BLANK LINE>
  3. <body>
  4. <BLANK LINE>
  5. <footer>

大致分为三个部分(使用空行分割):

  1. 标题行: 必填, 描述主要修改类型和内容
  2. 主题内容: 描述为什么修改, 做了什么样的修改, 以及开发的思路等等
  3. 页脚注释: 放 Breaking Changes 或 Closed Issues**

    type: commit 的类型(必须)

    用于说明git commit的类别,只允许使用下面的标识
  • feat: 新功能、新特性
  • fix/to:修复bug,可以是QA发现的BUG,也可以是研发自己发现的BUG。
    • fix:产生diff并自动修复此问题。适合于一次提交直接修复问题
    • to:只产生diff不自动修复此问题。适合于多次提交。最终修复问题提交时使用fix
  • perf: 更改代码,以提高性能
  • refactor: 代码重构(重构,在不影响代码内部行为、功能下的代码修改)
  • docs: 文档修改
  • style: 格式(不影响代码运行的变动)。代码格式修改, 注意不是 css 修改(例如分号修改)
  • test: 测试用例新增、修改
  • build: 影响项目构建或依赖项修改
  • revert: 恢复上一次提交
  • ci: 持续集成相关文件修改
  • chore: 其他修改(不在上述类型中的修改)
  • release: 发布新版本
  • workflow: 工作流相关文件修改
  • sync:同步主线或分支的Bug。

    scope(可选)

    scope用于说明 commit 影响的范围,比如数据层、控制层、视图层等等,视项目不同而不同。
    例如在Angular,可以是location,browser,compile,compile,rootScope, ngHref,ngClick,ngView等。如果你的修改影响了不止一个scope,你可以使用*代替。

    subject(必须)

    subject是commit目的的简短描述,不超过50个字符。
    建议使用中文(感觉中国人用中文描述问题能更清楚一些)。

  • 结尾不加句号或其他标点符号。

  • 根据以上规范git commit message将是如下的格式:
    1. fix(DAO):用户查询缺少username属性
    2. feat(Controller):用户查询接口开发

body: commit 具体修改内容, 可以分为多行.

footer: 一些备注, 通常是 BREAKING CHANGE 或修复的 bug 的链接.

示例

fix(修复BUG)

如果修复的这个BUG只影响当前修改的文件,可不加范围。如果影响的范围比较大,要加上范围描述。
例如这次 BUG 修复影响到全局,可以加个 global。如果影响的是某个目录或某个功能,可以加上该目录的路径,或者对应的功能名称。

  1. // 示例1
  2. fix(global):修复checkbox不能复选的问题
  3. // 示例2 下面圆括号里的 common 为通用管理的名称
  4. fix(common): 修复字体过小的BUG,将通用管理下所有页面的默认字体大小修改为 14px
  5. // 示例3
  6. fix: value.length -> values.length

feat(添加新功能或新页面)

  1. feat: 添加网站主页静态页面
  2. 这是一个示例,假设对点检任务静态页面进行了一些描述。
  3. 这里是备注,可以是放BUG链接或者一些重要性的东西。

chore(其他修改)

chore 的中文翻译为日常事务、例行工作,顾名思义,即不在其他 commit 类型中的修改,都可以用 chore 表示。

  1. chore: 将表格中的查看详情改为详情

  • 本文作者:GeekPower - Felix Sun
  • 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!