npm 包 @changesets/changelog-github 使用教程

阅读时长 5 分钟读完

介绍

随着开源项目的增加,github 的 issue 和 pull request 越来越成为开发者的工作中必不可少的一部分。在这个过程中,我们往往需要记录代码的修改,以便更好地管理和维护我们的项目。这就需要我们编写 changelog。changelog 又称为版本变更日志,它是一种记录软件版本变化历史的文档。常用的格式是 markdown。

@changesets/changelog-github 是一款 npm 包,可用于自动生成 GitHub 上的 changelog,无需手动编辑。

安装

使用

  1. 在 github 上创建一个文件,例如 CHANGELOG.md,用于存储将要生成的 changelog。

  2. 在项目的根目录创建一个 .changeset 目录,在这个目录下创建一个文件 my-change-set.md,例如:

  3. 在 package.json 中添加以下 script:

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

    这里我们添加了 changelog-github 命令,用于生成 GitHub 上的 changelog。

  4. 在 GitHub 上创建一个 ACCESS_TOKEN,用于将 changelog 上传到 github 的仓库。

  5. 在项目根目录创建一个 .env 文件,写入 ACCESS_TOKEN,如下:

  6. 运行变更版本命令:

    运行完后,你将看到一个新的 commit,这个 commit 包括了你所做的更改以及新版本的变更文件。

    至此,我们已经完成了 changelog 的自动生成,它已经被上传到 GitHub 了,你可以打开 CHANGELOG.md 以查看其内容。

示例

我们可以使用一个实际的示例来更好地理解如何使用 @changesets/changelog-github。

假设我们有一个名为 my-package 的 npm 包,在项目根目录执行以下命令:

创建 GitHub 上的 changelog 文件 CHANGELOG.md。

接下来,我们可以在项目根目录创建一个 .changeset 目录,并在其中创建一个 changelog 文件。

我们可以根据需要添加更多的 .changeset 文件,在发布新版本时执行相应的更改。

然后,我们需要在 package.json 中添加以下 script:

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

接下来,我们需要创建一个 GitHub access token。

在 GitHub 上,单击您的头像,然后选择 Settings。

在左侧边栏中,单击 Developer settings。

单击用于 CI 的 Personal access tokens。

单击 Generate new token。

为您的令牌提供有意义的名称,并授予 repo 权限。

首先,使用以下命令在项目根目录创建一个 .env 文件:

然后将以下代码添加到 .env,您需要将 your_access_token 替换为您刚刚生成的 GitHub token:

现在,我们可以运行以下命令发布一个新的版本:

最后,我们就可以在 GitHub 上查看我们自动生成的 changelog 文件了。

总结

通过使用 @changesets/changelog-github,我们可以实现自动化生成 GitHub 上的 changelog,无需手动编辑。这种自动化生成 changelog 的方式可减少我们的工作量,提高我们的效率。我希望这篇文章能帮助大家更好地理解如何使用它,并为开源社区的发展做出一点微小的贡献。

参考文献

使用 @changesets/changelog-github 自动生成 GitHub 上的 changelog

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

纠错
反馈