Turborepo

prune

为目标包生成一个部分 monorepo。输出将放置在名为 out 的目录中,其中包含以下内容:

  • 构建目标所需的所有内部包的完整源代码。
  • 一个经过修剪的 lockfile,其中包含构建目标所需的原始 lockfile 的子集。
  • 根目录 package.json 的副本。
终端
turbo prune [package]

示例

从具有以下结构的存储库开始

package.json
pnpm-lock.yaml

运行 turbo prune frontend 以在 out 目录中为 frontend 应用程序生成一个修剪后的工作区

package.json
pnpm-lock.yaml (部分)

选项

--docker

默认为 false

更改输出目录,使其更易于与 Docker 最佳实践和层缓存一起使用。该目录将包含:

  • 一个名为 json 的文件夹,其中包含已修剪的工作区的 package.json 文件。
  • 一个名为 full 的文件夹,其中包含已修剪的工作区构建目标所需的内部包的完整源代码。
  • 一个经过修剪的 lockfile,其中包含构建目标所需的原始 lockfile 的子集。

使用上面的相同示例,运行 turbo prune frontend --docker 将生成以下内容:

pnpm-lock.yaml (部分)
package.json (来自仓库根目录)
package.json (来自仓库根目录)
package.json
package.json
package.json

--out-dir <path>

默认为 ./out

自定义生成修剪输出的目录。

小时

节省的总计算量
开始使用
远程缓存 →

本页内容