npm 包 @erquhart/lerna-conventional-commits 使用教程

前言

在前端项目开发过程中,随着项目规模的扩大以及团队协作的深入,项目代码库会不断的增加,如果没有好的代码管理工具会带来许多困扰,如版本控制,代码质量维持等问题。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


猜你喜欢

  • npm 包 lineclip 使用教程

    什么是 lineclip? Lineclip 是一个能够对线段进行裁剪的 npm 包。它基于 Sutherland-Hodgman 的直线裁剪算法,支持在网格和非网格网格中裁剪线段。

    4 年前
  • npm 包 browser-media-mime-type 使用教程

    简介 browser-media-mime-type 是一个可以为当前浏览器进行媒体文件 MIME 类型识别的 npm 包。通过该包,可以方便地根据文件扩展名或 MIME 类型获得对应的 MIME 类...

    4 年前
  • npm 包 load-asset 使用教程

    前言 在前端开发中,我们经常需要加载各种资源文件,比如图片、音频、视频等等。为了方便管理这些资源文件,我们可以使用 npm 包 load-asset。这个包可以帮助我们轻松地加载各种资源文件。

    4 年前
  • npm 包 canvas-sketch 使用教程

    canvas-sketch 是一个在浏览器或 Node.js 环境中很有用的 npm 包。它使得绘图和可编程的艺术变得更加容易,并允许您创建和分享复杂的图形和交互式应用程序。

    4 年前
  • npm 包 install-if-needed 使用教程

    npm(Node Package Manager)是 Node.js 的包管理器,它轻松地帮助开发人员在项目中引入所需的依赖。但随着项目规模的增长,包的数量也会变得膨胀。

    4 年前
  • npm 包 canvas-sketch-cli 使用教程

    什么是 canvas-sketch-cli? canvas-sketch-cli 是一款基于 Node.js 的命令行工具,它可以让你通过使用 JavaScript 和 Canvas API 来创建艺...

    4 年前
  • npm 包 nice-color-palettes 使用教程

    在前端开发中,常常需要使用配色方案来美化页面或者制作数据可视化图表。但是对于那些缺乏设计经验的前端工程师来说,选择一种好看的配色方案可能会非常困难。幸运的是,有一个叫做 nice-color-pale...

    4 年前
  • npm 包 Update-diff 使用教程

    前言 在前端开发过程中,常常需要更新我们使用的 npm 包,以保证代码的安全,性能和稳定性。然而,在更新 npm 包时,我们难免会遇到一些问题,譬如:更新后的 npm 包会带来新的 bug,或者一些 ...

    4 年前
  • npm 包 is-iexplorer 使用教程

    随着互联网的不断发展,Web前端技术也得到了越来越多的关注。当前,前端技术的应用范围不断扩大,需求不断增多,因此,我们需要寻找一些可靠的工具,以提高我们的开发效率和代码质量。

    4 年前
  • npm 包 impetus 使用教程

    简介 impetus 是一个用于处理基于触摸或鼠标的滚动和拖拽的轻量级 JavaScript 库。它非常适合基于 Web 的拖拽和滚动体验,提供了很多处理手势和惯性滚动方面的功能。

    4 年前
  • npm包pan-zoom使用教程

    介绍 pan-zoom是一款使用简单、功能强大的npm包,可用于在前端页面上添加拖动和缩放功能。 在开发前端页面时,我们常常需要让用户对页面元素进行拖动或缩放。以往需要自行编写代码完成这些交互功能,但...

    4 年前
  • npm 包 arc-to 使用教程

    前言 在前端开发过程中,我们常常需要绘制各种图形,其中圆弧是其中比较常见的一种。而绘制圆弧时需要用到圆弧的参数,不过获取这些参数比较麻烦,不过有一款叫做 arc-to 的 npm 包可以帮助我们更加方...

    4 年前
  • npm 包 caret-position2 使用教程

    前言 在前端开发中,操作文本框的光标位置是一个常见的需求,而 npm 上的 caret-position2 包就是专门用来处理这个问题的。 本文将会介绍如何使用 caret-position2 包,旨...

    4 年前
  • npm 包 autosize-input 使用教程

    简介 autosize-input 是一个通过监听输入框内容大小来自适应调整输入框大小的 npm 包。它只依赖于 jQuery,并且可以与任何前端框架兼容,比如 React、Vue、Angular 等...

    4 年前
  • npm 包 input-number 使用教程

    在前端开发中,表单输入框是必不可少的一个元素,而数值输入框是其中的一个类型。input-number 就是一个针对数值输入框的 npm 包,它能够方便地实现数值输入框的可编辑、键盘输入、按钮调整等功能...

    4 年前
  • npm 包 tst 使用教程

    简介 tst 是一款基于 TypeScript 的测试工具库,可以让你更方便地编写测试用例,同时也提供了丰富的测试工具和断言库,使得测试变得更加简单易用。在本教程中,我们将介绍 tst 的使用方法,让...

    4 年前
  • npm 包 settings-panel 使用教程

    前言 在前端开发中,我们经常需要添加一些设置面板来给用户提供相关配置项的修改,例如网站主题、语言、字号等等。但是开发一个通用的设置面板是一件复杂的任务,需要考虑到用户体验、可读性、可维护性等多个方面。

    4 年前
  • npm 包 array-fill 使用教程

    介绍 array-fill 是一款 npm 包,其主要功能是用给定值填充数组中的元素,从而快速创建指定大小和初始值的数组。该包提供了类 Unix shell 的用法,十分简单易用。

    4 年前
  • npm 包 image-equal 使用教程

    在前端开发中,经常需要对比两张图片是否一样,特别是在测试中。本文介绍如何使用 npm 包 image-equal 完成图片比较。 1. 安装 image-equal 打开终端(Terminal)或命令...

    4 年前
  • npm 包 next-pow-2 使用教程

    在前端开发过程中,我们经常需要进行数字上的计算,有时我们需要对数字进行一些特殊计算,例如将数字向上调整到最近的 2 的 n 次方。这时就可以使用 npm 包 next-pow-2 来完成这个任务。

    4 年前

相关推荐

    暂无文章