npm 包 @standard-release/cli 使用教程

阅读时长 4 分钟读完

在前端开发中,我们经常需要把代码发布到 npm 上供他人使用。由于发布的代码需要遵循一定的标准,因此我们需要引入一些工具来辅助我们进行版本发布。@standard-release/cli 就是为了解决这样的问题而产生的一个 npm 包。

@standard-release/cli 是一个 Node.js 命令行工具,它可以自动化地对代码进行版本控制、Changelog 的生成和发布到 npm 上,帮助我们更加高效地管理和发布代码。

安装

通过 npm 安装 @standard-release/cli:

这将在全局环境下安装 @standard-release/cli 工具包。

配置

在使用 @standard-release/cli 之前,我们需要先进行配置。在项目根目录下创建一个名为 .standard-releaserc.json 的 JSON 配置文件:

-- -------------------- ---- -------
-
  ----------- -----------
  ---------- -
    ------------------------------------- -
      --------- ---------------------
    ---
    --------------------------------------------- -
      --------- ---------------------
    ---
    ------------------------- -
      ------------- -----
    ---
    --------------------------
  -
-

其中包括:

  • branches:支持的分支列表,只有在指定的分支才会触发版本升级、Changelog 生成和发布动作。
  • plugins:为插件列表,用于版本升级、Changelog 生成和发布到 npm 上的操作。这里我们引用了 Semantic Release 的几个插件,其中 @semantic-release/commit-analyzer 用于分析 commit 的提交信息和 @semantic-release/release-notes-generator 用于生成 Changelog, @semantic-release/npm 用于发布到 npm 上, @semantic-release/github 用于生成 GitHub Release。

使用

配置完成后,我们可以使用 @standard-release/cli 来实现自动化发布:

运行上述命令会自动开始版本升级、生成 Changelog,并将代码发布到 npm 上。

但是,由于我们通常不会对每一次的 commit 调用 standard-release,因此我们可以将其配置为 CI/CD 工具,在合并代码到指定分支时自动运行 standard-release

下面是一个用于 GitHub Actions 的例子:

-- -------------------- ---- -------
---
  -----
    ---------
      - ------
-----
  --------
    -------- -------------
    ------
    - ----- --------
      ----- -------------------
    - ----- ----- -------
      ----- --------------------------
      -----
        ------------- ------
    - ----- ------- ------------
      ---- --- --
    - ----- -------
      ----
        ------------- --- -------------------- --
        ---------- --- ----------------- --
      ---- --- ----------------

在这个例子中,我们配置了在 master 分支 push 时运行 GitHub Actions,步骤包括安装依赖、运行 standard-release

值得一提的是,在实践中,我们还可以为 standard-release 配置更进一步的选项,例如自动合并 Pull Request 或者使用 Git flow 等发布规范。通过 @standard-release/cli 简化了发布的流程,让我们能够更专注于代码本身,提高了开发效率和质量。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5f087a3f403f2923b035bfee

纠错
反馈