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