docs/deployment/dev-branches.mdx
Every project starts with a single development environment called default. A dev branch is an isolated environment that lives under development, with its own runs, schedules, and concurrency.
Branches are useful when you run more than one local dev session at a time. Give each session its own branch so their runs don't collide:
When you're done with a branch, you can archive it to free up a slot or just re-use it.
Log in with the CLI first:
<CodeGroup>npx trigger.dev@latest login
pnpm dlx trigger.dev@latest login
bunx trigger.dev@latest login
Then start a dev session on a branch with the --branch flag. If the branch doesn't exist yet, it's created:
npx trigger.dev@latest dev --branch my-feature
pnpm dlx trigger.dev@latest dev --branch my-feature
bunx trigger.dev@latest dev --branch my-feature
Without --branch, the session runs on the default branch.
Archive a branch from the CLI when you no longer need it. The CLI detects your local git branch, or you can name one with --branch:
npx trigger.dev@latest dev archive --branch my-feature
pnpm dlx trigger.dev@latest dev archive --branch my-feature
bunx trigger.dev@latest dev archive --branch my-feature
You can also create and archive branches from the Dev branches page in the dashboard.
Each branch has its own concurrency, so we limit how many can be active per project. Archive a branch at any time to unlock another slot.
| Plan | Active dev branches |
|---|---|
| Free | 25 |
| Hobby | 25 |
| Pro | 25 |
Need more? Get in touch and we'll raise the limit.