首页/开发/CI/CD 与发布速查/单仓构建工具概览(Nx / Turborepo / Bazel)
构建与制品管理58 条

单仓构建工具概览(Nx / Turborepo / Bazel)

用依赖图驱动「只构建受影响目标」:affected 概念配合远程缓存,把 monorepo 的全量构建变成增量构建。

CI/CD 与发布速查开发更新于 2026-10-12

工具

工具生态特点
NxJS/TS 为主,多种语言插件任务图、affected、远程缓存
TurborepoJS/TS 生态任务管道与缓存,配置轻
Bazel多语言大型仓库声明式依赖、远程缓存/执行

Nx affected 示例

Nx affected 示例
npx nx affected -t test --base=origin/main
工具先行条件是依赖声明准确:隐式依赖会让 affected 判定漏跑。

易错点

  • 依赖图的隐式依赖未声明:改动判定遗漏,定期用全量构建交叉验证
  • 缓存键未含环境版本(Node 版本等):跨环境复用错误结果

数据来源与参考

  • Nx Docs《Affected》
  • Turborepo 文档
  • Bazel 文档
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌