介绍
欢迎来到 Turborepo 文档!
什么是 Turborepo?
Turborepo 是一个用于 JavaScript 和 TypeScript 代码库的高性能构建系统。它专为扩展单体仓库(monorepos)而设计,同时也能使单包工作区的工作流程更快速。
从个人开发者到全球最大的企业工程组织,Turborepo 通过轻量级方法优化你需要在代码库中运行的任务,节省了数年的工程时间和数百万美元的计算成本。
单体仓库的问题
单体仓库有很多优势——但它们难以扩展。每个工作区都有自己的测试套件、自己的代码检查和自己的构建过程。一个单体仓库可能有数千个需要执行的任务。
这些减速可能会显著影响你的团队构建软件的方式,特别是在规模扩大时。反馈循环需要快速,以便开发人员能够快速交付高质量代码。
单体仓库的解决方案
Turborepo 解决了你的单体仓库的扩展问题。远程缓存存储所有任务的结果,这意味着你的 CI 永远不需要重复相同的工作。
此外,在单体仓库中安排任务可能很困难。你可能需要先构建,然后测试,然后检查代码...
Turborepo 为最大速度安排你的任务,在所有可用核心上并行工作。
Turborepo 可以逐步采用,你可以在几分钟内将其添加到任何仓库。它使用你已经编写的 package.json
脚本、你已经声明的依赖项,以及一个 turbo.json
文件。你可以与任何包管理器一起使用,如 npm
、yarn
或 pnpm
,因为 Turborepo 依赖于 npm 生态系统的惯例。
如何使用这些文档
我们将尽最大努力减少专业术语——但有一些需要了解的词汇,这对理解文档很重要。我们创建了术语表页面来帮助你了解这些术语。
加入社区
如果你对 Turborepo 的任何相关问题有疑问,随时欢迎在 GitHub Discussions、Vercel Community 和 Twitter 上向社区提问。