仓库
文档
版本控制和发布

单仓库中版本控制和发布包

在单仓库中手动版本控制和发布包可能非常繁琐。幸运的是,有一个工具可以简化操作 - Changesets (在新标签页打开) CLI。

我们推荐 Changesets,因为它易于使用,并且 - 就像 Turborepo 一样 - 与您已经习惯使用的单仓库工具相匹配。

一些替代方案是

理解 Changesets

我们建议您查看 Changesets 文档。以下是我们推荐的阅读顺序

  1. 为什么要使用 changesets? (在新标签页打开) - 介绍了基本原理。
  2. 安装说明 (在新标签页打开)
  3. 如果您使用的是 GitHub,请考虑使用 Changeset GitHub 机器人 (在新标签页打开) - 一个机器人,可以提醒您在 PR 中添加 changesets。
  4. 您还应该考虑添加 Changesets GitHub 操作 (在新标签页打开) - 一个使发布变得非常容易的工具。

在 Turborepo 中使用 Changesets

一旦您开始使用 Changesets,您将可以使用三个有用的命令

# Add a new changeset
changeset
 
# Create new versions of packages
changeset version
 
# Publish all changed packages to npm
changeset publish

将您的发布流程链接到 Turborepo 可以使组织您的部署变得更加简单和快速。

我们建议在您的根目录中添加一个 publish-packages 脚本到您的 package.json

{
  "scripts": {
    // Include build, lint, test - all the things you need to run
    // before publishing
    "publish-packages": "turbo run build lint test && changeset version && changeset publish"
  }
}

我们推荐 publish-packages,这样就不会与 npm 的内置 publish 脚本冲突。

这意味着,当您运行 publish-packages 时,您的单仓库将被构建、代码风格检查、测试和发布 - 并且您将受益于 Turborepo 的所有加速功能。