Turborepo 在单仓库中的应用
问题
单仓库有很多优点 - 但它们难以扩展。每个工作区都有自己的测试套件、自己的代码风格检查和自己的构建流程。一个单仓库可能需要执行数百个任务。
解决方案
Turborepo 解决您的单仓库扩展问题。我们的远程缓存存储所有任务的结果,这意味着您的 CI 不需要重复执行相同的工作。
在单仓库中,任务调度可能很困难。想象一下,yarn build
需要在所有工作区中运行,然后才能运行 yarn test
。Turborepo 可以调度您的任务以最大限度地提高速度,利用所有可用的核心。
Turborepo 可以逐步采用。它使用您已经编写的 package.json
脚本、您已经声明的依赖项以及单个 turbo.json
文件。您可以与任何包管理器一起使用它,例如 npm
、yarn
或 pnpm
。您可以在几分钟内将其添加到任何单仓库中。
Turborepo 不是什么
Turborepo 不处理 包安装。像 npm
、pnpm
或 yarn
这样的工具已经出色地完成了这项工作。但它们以低效的方式运行任务,导致 CI 构建速度缓慢。
我们建议Turborepo 运行您的任务,而您的首选包管理器安装您的包。