返回

commitizen+husky规范Git提交记录,并自动生成Changelog

前端

概述

在软件开发中,提交记录是至关重要的。它记录了代码库的变更历史,方便开发者了解项目的演变过程,并帮助维护者合并分支和修复缺陷。

然而,在多人协作开发的项目中,约束提交规范也是一个必须要做的事情。如果没有统一的提交规范,那么不同开发者提交的记录可能杂乱无章,甚至难以理解。

为了解决这个问题,我们可以使用commitizen和husky这两个工具来规范Git提交记录。commitizen是一个命令行工具,可以帮助您轻松创建符合约定规范的提交记录。husky是一个Git钩子工具,可以自动执行某些任务,例如在提交代码时运行commitizen。

安装和配置

commitizen

首先,安装commitizen:

npm install --global commitizen

然后,创建一个新的提交消息模板:

commitizen init

这将创建一个名为.cz-config.js的文件,该文件包含了提交消息模板的配置信息。

husky

接下来,安装husky:

npm install --save-dev husky

然后,在项目的根目录下创建一个名为.husky的目录,并在其中创建一个名为pre-commit的文件:

mkdir .husky
echo "npx cz" > .husky/pre-commit

这将告诉husky在每次提交代码之前运行commitizen。

使用

要使用commitizen创建提交记录,只需在命令行中运行以下命令:

git cz

这将打开一个交互式界面,引导您创建符合约定规范的提交记录。

在创建提交记录时,您可以选择以下类型的提交:

  • 修复缺陷
  • 新功能
  • 文档更新
  • 测试
  • 构建
  • 重构
  • 性能优化
  • 安全更新

您还可以为提交记录添加标题和。

创建好提交记录后,按回车键确认。这将自动提交代码并生成Changelog。

Changelog

Changelog是一个文本文件,记录了项目的版本发布历史。它通常包含以下信息:

  • 版本号
  • 发布日期
  • 已修复的缺陷
  • 新功能
  • 文档更新
  • 其他更改

Changelog对于项目的用户和贡献者来说都非常有用。用户可以通过Changelog了解项目的最新变化,而贡献者可以通过Changelog了解自己的代码是否已被合并。

自动生成Changelog

您可以使用以下命令自动生成Changelog:

npx conventional-changelog -p angular -i CHANGELOG.md -s

这将使用angular风格的提交规范生成Changelog并将其保存到CHANGELOG.md文件中。

结语

commitizen和husky是两个非常有用的工具,可以帮助您规范Git提交记录并自动生成Changelog。这将提高项目的代码质量和协作效率。