前言
在前端项目开发过程中,随着项目规模的扩大以及团队协作的深入,项目代码库会不断的增加,如果没有好的代码管理工具会带来许多困扰,如版本控制,代码质量维持等问题。Lerna 是一个优秀的用于管理 JavaScript 代码库的工具,它能够帮助我们来管理有多个包的 JavaScript 项目。
在 Lerna 的基础上,我们可以结合Conventional Commits规范,使用 @erquhart/lerna-conventional-commits 包来实现自动化生成 changelog,减少手动更新 changelog 的工作量。
本篇文章将介绍如何使用 @erquhart/lerna-conventional-commits 包并结合 Github Actions 来自动生成 changelog。
lerna-conventional-commits 的安装
使用 npm
命令安装 @erquhart/lerna-conventional-commits
包。
--- ------- -- ------------------------------------ -----
lerna-conventional-commits 的配置
在根目录下新建 commitlint.config.js
和 .huskyrc.js
文件,并分别填写以下内容。
commitlint.config.js
-------------- - - ------------- -------------------------------------------- -
.huskyrc.js
-------------- - - ------ - ------------- ----------- -- ------------------ ------------- ------ --- ----- -- ----- --- ---- -- ----- --- ------ -- --
配置 Github Actions
在项目根目录下,新建 .github/workflows/release.yml
文件,并写入以下代码。
----- ------- --- ----- --------- - ---- ----- -------- -------- ------------- ------ - ----- ------------------- - ----- ------- ------- ----- -------------------------------- ----- ------------- --- -------------------- -- - ----- ------- ----- ------------------------- ----- ---- ---- ------------------- -- ----------- --- --------------- -- ---------- ------------ ---- ------------- --- -------------------- --
以上代码用于在代码推送到 main
分支时进行自动化构建和发布。
发布包
在完成过代码修改后,使用 lerna 进行包发布。
- ----- --- ------------------- --------------- -- -- ---- ----------------- ----- ---------- --------- --- --------------- - ----------- --- ----- ---- ------- ---------- -- ---- ---- - -- --- ----- ---- ------- ---------- -- ---- ----- - -- --- ----- ------- -- ---------------- ---
结语
通过本文的介绍,您已经学会了如何使用 @erquhart/lerna-conventional-commits 包来自动生成 changelog,并通过结合 Github Actions 来实现自动化发布。
在实际开发过程中,我们可以根据自己的需求,灵活使用和定制化这些工具和流程,提高我们的开发效率和代码质量。
以上只是个人对于这部分技术的理解,有不足之处,敬请谅解。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/5eedaf48b5cbfe1ea0610fcd