仓库
文档
API 参考
prune

turbo prune <scope>...

为目标工作区生成一个稀疏/部分单仓库,并带有修剪后的锁定文件。

此命令将生成一个名为 out 的文件夹,其中包含以下内容

  • 构建目标所需的所有内部工作区的完整源代码
  • 一个新的修剪后的锁定文件,其中只包含原始根锁定文件中实际用于修剪后的工作区中的工作区的依赖项。
  • package.json 的副本
.                                 # Folder full source code for all workspaces needed to build the target
├── package.json                  # The root `package.json`
├── packages
│   ├── ui
│   │   ├── package.json
│   │   ├── src
│   │   │   └── index.tsx
│   │   └── tsconfig.json
│   ├── shared
│   │   ├── package.json
│   │   ├── src
│   │   │   ├── __tests__
│   │   │   │   ├── sum.test.ts
│   │   │   │   └── tsconfig.json
│   │   │   ├── index.ts
│   │   │   └── sum.ts
│   │   └── tsconfig.json
│   └── frontend
│       ├── next-env.d.ts
│       ├── next.config.js
│       ├── package.json
│       ├── src
│       │   └── pages
│       │       └── index.tsx
│       └── tsconfig.json
└── yarn.lock                            # The pruned lockfile for all targets in the subworkspace

选项

--docker

类型:布尔值

默认为 false。传递此标志将更改修剪后的工作区输出文件夹,使其更易于与 Docker 最佳实践/层缓存 (在新标签页中打开) 一起使用。

使用 --docker 标志。 prune 命令将生成一个名为 out 的文件夹,其中包含以下内容

  • 一个名为 json 的文件夹,其中包含修剪后的工作区的 package.json
  • 一个名为 full 的文件夹,其中包含修剪后的工作区的完整源代码,但只包括构建目标所需的内部包。
  • 一个新的修剪后的锁定文件,其中只包含原始根锁定文件中实际用于修剪后的工作区中的包的依赖项。
.
├── full                                # Folder full source code for all package needed to build the target
│   ├── package.json
│   └── packages
│       ├── ui
│       │   ├── package.json
│       │   ├── src
│       │   │   └── index.tsx
│       │   └── tsconfig.json
│       ├── shared
│       │   ├── package.json
│       │   ├── src
│       │   │   ├── __tests__
│       │   │   │   ├── sum.test.ts
│       │   │   │   └── tsconfig.json
│       │   │   ├── index.ts
│       │   │   └── sum.ts
│       │   └── tsconfig.json
│       └── frontend
│           ├── next-env.d.ts
│           ├── next.config.js
│           ├── package.json
│           ├── src
│           │   └── pages
│           │       └── index.tsx
│           └── tsconfig.json
├── json                                # Folder containing just package.jsons for all targets in the subworkspace
│   ├── package.json
│   └── packages
│       ├── ui
│       │   └── package.json
│       ├── shared
│       │   └── package.json
│       └── frontend
│           └── package.json
└── yarn.lock                           # The pruned lockfile for all targets in the subworkspace

--out-dir

默认./out

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