93 lines
2.5 KiB
Plaintext
93 lines
2.5 KiB
Plaintext
---
|
|
title: "Development branches"
|
|
sidebarTitle: "Dev branches"
|
|
description: "Run multiple local dev sessions in isolation by giving each one its own development branch. Use branches to keep parallel work (in separate worktrees, directories, or agents) from clashing."
|
|
---
|
|
|
|
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:
|
|
|
|
- Run several [git worktrees](https://git-scm.com/docs/git-worktree) or copies of your project in parallel, one branch each.
|
|
- Let multiple coding agents each work in their own branch without stepping on one another.
|
|
|
|
When you're done with a branch, you can archive it to free up a slot or just re-use it.
|
|
|
|
## Run a dev session on a branch
|
|
|
|
Log in with the CLI first:
|
|
|
|
<CodeGroup>
|
|
|
|
```bash npm
|
|
npx trigger.dev@latest login
|
|
```
|
|
|
|
```bash pnpm
|
|
pnpm dlx trigger.dev@latest login
|
|
```
|
|
|
|
```bash bun
|
|
bunx trigger.dev@latest login
|
|
```
|
|
|
|
</CodeGroup>
|
|
|
|
Then start a dev session on a branch with the `--branch` flag. If the branch doesn't exist yet, it's created:
|
|
|
|
<CodeGroup>
|
|
|
|
```bash npm
|
|
npx trigger.dev@latest dev --branch my-feature
|
|
```
|
|
|
|
```bash pnpm
|
|
pnpm dlx trigger.dev@latest dev --branch my-feature
|
|
```
|
|
|
|
```bash bun
|
|
bunx trigger.dev@latest dev --branch my-feature
|
|
```
|
|
|
|
</CodeGroup>
|
|
|
|
Without `--branch`, the session runs on the `default` branch.
|
|
|
|
<Tip>
|
|
You can also set the branch with the `TRIGGER_DEV_BRANCH` environment variable instead of the flag.
|
|
</Tip>
|
|
|
|
## Archive a 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`:
|
|
|
|
<CodeGroup>
|
|
|
|
```bash npm
|
|
npx trigger.dev@latest dev archive --branch my-feature
|
|
```
|
|
|
|
```bash pnpm
|
|
pnpm dlx trigger.dev@latest dev archive --branch my-feature
|
|
```
|
|
|
|
```bash bun
|
|
bunx trigger.dev@latest dev archive --branch my-feature
|
|
```
|
|
|
|
</CodeGroup>
|
|
|
|
You can also create and archive branches from the **Dev branches** page in the dashboard.
|
|
|
|
## Limits on active branches
|
|
|
|
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](https://trigger.dev/contact) and we'll raise the limit.
|