用途:Turborepo 是面向 JavaScript/TypeScript monorepo 的高性能构建系统,用于组织多包仓库、编排任务、缓存构建输出并加速 CI/CD。适用于搭建新 monorepo、优化既有仓库构建、配置任务流水线与远程缓存、迁移 Lerna/Nx 等工具,以及管理微前端或共享库。
主要能力:以根 package.json 的 workspaces 与 turbo.json 配置任务流水线;通过 dependsOn 支持拓扑依赖(^build)与普通依赖(build、lint),按依赖顺序执行;基于输入内容哈希做本地缓存,只重跑变更任务;通过 turbo login/link 接入 Vercel 远程缓存或自定义缓存服务,在团队与 CI 间共享结果;支持按包名、目录、Git 变更、依赖关系过滤(如 --filter='...web'、--filter='...[origin/main]'),以及 --concurrency、--continue、--dry-run、--output-logs 等运行控制;提供 turbo prune 生成子集以优化 Docker 构建,turbo gen 生成代码,turbo ls 列出包。
使用方式:需 Node.js 18+ 及包管理器。全局安装可用 npm install turbo --global,项目内可用 npm install turbo --save-dev(yarn/pnpm/bun 有对应命令)。新建仓库可运行 npx create-turbo@latest。根 package.json 配置 scripts(如 "build": "turbo run build"),turbo.json 定义 pipeline 中 build 的 dependsOn 与 outputs、dev 的 cache:false 与 persistent:true 等。运行 turbo run build、turbo run build test lint 等执行任务,turbo run build --filter=web 限定包。
限制与说明:资料未提供具体收费、价格与性能指标;缓存需正确配置 inputs/outputs/env,输出目录需纳入 outputs,dev 服务器应禁用缓存;远程缓存需配置 TURBO_TOKEN、TURBO_TEAM 或自定义 apiurl 与 token。