conventional-changelog-yygame 是一个特定于 YYGame 的 npm 包,它实现了Conventional Commits 规范并生成了符合规范的 changelog。
本篇文章将详细介绍如何使用 conventional-changelog-yygame,并提供相关的示例代码,帮助读者更好地理解和使用该包。
安装
首先,我们需要在项目中安装 conventional-changelog-yygame。
npm install conventional-changelog-yygame --save-dev
配置
使用 conventional-changelog-yygame 需要先配置一个 config 文件。该文件告诉 conventional-changelog-yygame 如何获取 commit messages,并指定生成 changelog 的模板。
在项目根目录下,创建一个 changelog.config.js
文件,并配置如下:
module.exports = { // 从哪一次 git tag 开始生成 changelog,默认为最新的 git tag startPoint: '0.1.0', // 生成的 changelog 格式,可从 preset 中选择 preset: 'yygame', };
其中,preset
属性指定了使用的 changelog 模板,目前支持的模板有:
angular
aztec
codemix
ember
eslint
jquery
jshint
conventional-changelog-yygame
:YYGame 定制的 changelog 模板
若不指定 preset
属性,默认使用 conventional-changelog-yygame
模板。
使用
安装和配置都完成后,我们就可以生成 changelog 了。
CLI
conventional-changelog-yygame 提供了一个命令行工具,用于生成 changelog。在 package.json 中配置一个 npm script,如下所示:
{ "scripts": { "changelog": "conventional-changelog-yygame -p yygame -i CHANGELOG.md -s -r 0" } }
该命令会根据配置文件 changelog.config.js
自动生成 changelog,并保存在项目根目录下的 CHANGELOG.md
文件中。-s
选项表示将结果写到 stdout,-r
选项表示从相应的 startPoint
tag 开始向后一共展示 0
个 commit。
API
conventional-changelog-yygame 还提供了 npm 包并暴露了 API,我们可以在自己的代码中调用 API 生成 changelog,具体用法如下:
-- -------------------- ---- ------- ----- --------------------- - ----------------------------------------- ----- -- - -------------- -- -------- ------ - ---------- -------------- ----- ------ - --- ----------------------------- -------------- ----------- - -- --------- ----- --------- --- -------------------------------- ----------- ---
示例代码
以下是一个更完整的 demo,直接集成在我们的 pre-commit 中,当我们执行 git commit
时会自动生成 changelog。代码可自行修改以适应项目需要。
-- -------------------- ---- ------- -------------- ---- ----- ---- - ---------------- ----- - ---- - - ------------------------- ----- --------------------- - ----------------------------------------- ----- -- - -------------- ----- ---------- - -------------------- -------------------------- -- -------- ------ - ---------- ---- ----- ------ - -------------------- -- ---------- ------- ------ ------ ----- ----------- - --------------- -- -------- -- -- --------- -------- ------------------- - ------ ----------------------------- -------------- ----------- - -- --- ------------ --- -------------------------------- ----------- ---------------------- --------- ---------------- --- - -- -- ------------ --- --- --- -------- --------------- - --------- ------- -------------- -- -------- ------- --- -- --- ---- --------------- -------- ----- ------- ------- - -- ----- - ------------------- ------ --------- ------- - -------------------- ------------ -------------------- ------------ --- - ------------------- -------------- -- - ---------------- ---
总结
通过本文的使用介绍以及相关示例代码,相信读者对 conventional-changelog-yygame 已经有了一定的了解。使用该 npm 包能够规范日常代码开发工作流程,帮助团队更好地协作开发,提高代码质量。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60066b5451ab1864dac669e9