约定式提交规范

255 阅读3分钟

简介

约定式提交规范(Conventional Commits)是一种用于规范化提交消息格式的约定,旨在提供一致、易读的提交历史,并为自动化工具提供更好的支持。它定义了一套固定的提交消息格式,规定了提交类型、作用域、主题和描述等部分的结构和含义。

详细介绍

约定式提交规范通过统一提交消息的格式,使得代码库的提交历史更加清晰和易于理解。它由以下几个部分组成:

  • 提交类型(Type):表示提交的目的或意图,常见的类型有 feat(新特性)、fix(修复 bug)、docs(文档变更)、chore(构建、工程相关的改动)等。
  • 作用域(Scope):表示本次提交影响的范围,可以是一个模块、组件或文件名等。
  • 主题(Subject):简明扼要地描述本次提交的内容。
  • 描述(Body):可选部分,用于详细描述本次提交的更改内容。
  • 脚注(Footer):可选部分,用于说明本次提交所关闭的问题列表、重大变更或签名等。

提交消息的格式如下:

type(scope?): subject

body?

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

[可选 正文]

[可选 脚注]

示例:

docs(README): 新增约定式规范提交文档

在项目的 docs 目录中添加 ConventionalCommits.md 文档

优势

使用约定式提交规范带来以下优势:

  1. 清晰的提交历史:统一的提交消息格式使得提交历史易于阅读和理解,团队成员可以更快速地获取到代码变更的信息。
  2. 自动化工具支持:约定式提交规范为各种自动化工具(如自动生成变更日志、版本发布等)提供了基础。通过解析提交消息,这些工具可以自动执行相应的操作,减少手动操作的繁琐性。
  3. 提高协作效率:规范的提交消息可以帮助团队成员更好地协作。他们可以快速了解到其他成员所做的改动,并根据提交消息的信息进行相应的代码审查等操作。
  4. 易于维护和追溯:规范化的提交消息使得代码库更易于维护和追溯。在需要回溯历史变更时,可以通过提交消息中的关键信息快速定位到相关代码修改。

工作流程

  • 提交消息验证:用于验证提交消息是否符合规范。参见 约定式提交规范三部曲(一)之 commitlint
  • 交互式提交:用于引导用户创建符合约定式提交规范的提交消息。参见 约定式提交规范三部曲(二)之 commitizen。
  • 生成变更日志:用于根据约定式提交规范自动生成变更日志(CHANGELOG.md)。参见 约定式提交规范三部曲(三)之 conventional-changelog

参考网站

以下是一些参考网站,了解更多关于约定式提交规范的信息:

下一步

本文为原创内容,版权所有 © 2024 姚生。欢迎转载,但请注明出处,并附上原文链接。未经授权不得用于商业用途。如有疑问,请联系作者。