prune
Generate a partial monorepo for a target package. The output will be placed into a directory named out
containing the following:
- The full source code of all internal packages needed to build the target.
- A pruned lockfile containing the subset of the original lockfile needed to build the target.
- A copy of the root
package.json
.
Example
Starting with a repository with the following structure:
package.json
pnpm-lock.yaml
Run turbo prune frontend
to generate a pruned workspace for the frontend
application in an out
directory:
package.json
pnpm-lock.yaml (partial)
Options
--docker
Defaults to false
.
Alter the output directory to make it easier to use with Docker best practices and layer caching. The directory will contain:
- A folder named
json
with the pruned workspace'spackage.json
files. - A folder named
full
with the pruned workspace's full source code for the internal packages needed to build the target. - A pruned lockfile containing the subset of the original lockfile needed to build the target.
Using the same example from above, running turbo prune frontend --docker
will generate the following:
pnpm-lock.yaml (partial)
package.json (from repo root)
package.json (from repo root)
package.json
package.json
package.json
--out-dir <path>
Defaults to ./out
.
Customize the directory the pruned output is generated in.
Was this helpful?