用途:用于多包仓库(monorepo)管理,涉及 Nx、Turborepo、pnpm workspaces 的任务编排、缓存与代码共享;适合搭建 monorepo、优化构建或管理多包项目。
主要工具:Nx(基于依赖图、插件、企业级);Turborepo(简单快速,Vercel);pnpm workspaces(轻量快速);Lerna 被标注为 legacy,建议迁移。
Turborepo 用法:在配置中定义 pipeline,例如 build 依赖 ^build 并输出 dist/**,test 开启 cache;命令包括 pnpm turbo build 与 pnpm turbo test --filter=...@main。
Nx 用法:命令包括 nx affected --target=build 与 nx graph。
代码共享:目录结构为 monorepo/ 下分 packages/(ui、utils、config)与 apps/(web、api、mobile),通过 import { Button } from '@monorepo/ui'; 引用共享包。
缓存:分本地(开发)、远程(团队,如 Vercel、Nx Cloud)与分布式(CI);Turborepo 可用 npx turbo login && npx turbo link,Nx 可用 npx nx connect-to-nx-cloud。
pnpm Workspaces:在 packages 字段配置 ['packages/', 'apps/']。
最佳实践:原子提交、版本管理(changesets)、CI 使用 affected、根级共享配置。
限制:资料未提供具体版本要求、价格或性能指标,也未提供完整配置示例与更多安装步骤,暂未提供。