aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/packages/turbo-codemod/README.md
blob: 5545561f660bcae9620aa24ee8ce67a5ed3109f3 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# Turborepo Codemods

Turborepo provides Codemod transformations to help upgrade your Turborepo codebase.

Codemods are transformations that run on your codebase programmatically. This allows for a large amount of changes to be applied without having to manually go through every file.

## Commands

### `migrate`

Updates your Turborepo codebase to the specified version of Turborepo (defaults to the latest), running any required codemods, and installing the new version of Turborepo.

```
Usage: @turbo/codemod migrate|update [options] [path]

Migrate a project to the latest version of Turborepo

Arguments:
  path              Directory where the transforms should be applied

Options:
  --from <version>  Specify the version to migrate from (default: current version)
  --to <version>    Specify the version to migrate to (default: latest)
  --install         Install new version of turbo after migration (default: true)
  --force           Bypass Git safety checks and forcibly run codemods (default: false)
  --dry             Dry run (no changes are made to files) (default: false)
  --print           Print transformed files to your terminal (default: false)
  -h, --help        display help for command
```

### `transform` (default)

Runs a single codemod on your codebase. This is the default command, and can be omitted.

```
Usage: @turbo/codemod transform [options] [transform] [path]
       @turbo/codemod [options] [transform] [path]

Apply a single code transformation to a project

Arguments:
  transform   The transformer to run
  path        Directory where the transforms should be applied

Options:
  --force     Bypass Git safety checks and forcibly run codemods (default: false)
  --list      List all available transforms (default: false)
  --dry       Dry run (no changes are made to files) (default: false)
  --print     Print transformed files to your terminal (default: false)
  -h, --help  display help for command
```

## Developing

To add a new transformer, run `pnpm add-transformer`, or [view the complete guide](./src/transforms/README.md).