约定式提交

什么是约定式提交?

约定式提交规范是一种基于提交消息的轻量级约定。所谓轻量级约定,说白了,就是有一套用于创建提交消息的简单规则,这套规则源自于Angular 提交规范

Commit Message Format

 <type>[optional scope]: <description>

[optional body]

[optional footer]

翻译成中文就是:

<类型>[可选 范围]: <描述>

[可选 正文]

[可选 脚注]

每一条提交信息包含header、body、footer。header包含type、scope和description三部分。

header

type

  • feat: 新功能
  • fix: 修复bug
  • docs: 只改动了文档
  • style: 修改代码格式(例如去掉空格、改变缩进、增删分号,不影响代码逻辑)
  • refactor: 重构代码(非修复bug和增加新功能)
  • perf: 提升性能的改动
  • test: 添加或修改测试代码(Adding missing or correcting existing tests)
  • chore: Changes to the build process or auxiliary tools and libraries such as documentation generation
  • revert:回滚到上一个版本
  • ci:持续集成
  • build:构建版本

scope

代码变更影响的范围

  • 名词
  • 圆括号包围,例如fix(parser)

description

代码变更的简短描述

body

选填项,相对于上述的description,body用于更加详细的描述本次提交中所做出的修改。其中需要包括:

  • 本次修改的动机
  • 对比于修改之前的改进之处

footer

footer 部分一般用于记录不兼容的改动,以 BREAKING CHANGE 开头,后面是对变动的描述、以及变动理由和迁移方法。最后还可以添加关闭的 issue。

为什么要用约定式提交?

  • 自动化生成 CHANGELOG。
  • 基于提交的类型,自动决定语义化的版本变更。
  • 向同事、公众与其他利益关系者传达变化的性质。
  • 触发构建和部署流程。
  • 让人们探索一个更加结构化的提交历史,以便降低对你的项目做出贡献的难度。

如何在项目中规范化地提交?

Commit Message Editor

Commit Message Editor是一款基于VScode可支持文本式和表格式两种提交方式的工具。


Commit Message Editor.png

进入Commit Message Editor

image.png

文本式提交

文本式提交.png

表格式提交

表格式提交.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。