Branches & Environments
Isolate features, automate promotions, and enforce strict deployment gates across your entire development lifecycle.
Isolated Branches
Every branch gets its own isolated build environment. Parallel development without conflicts or resource contention.
Dynamic Environments
Auto-provision preview environments for PRs, or route branches to dedicated staging/prod targets with zero config.
Protection Rules
Enforce code review thresholds, status checks, and deployment approvals before any branch touches production.
Branch-to-Environment Mapping
Define how branches route to environments. Our default strategy auto-detects your workflow, but you can override it per-repo.
Environments inherit secrets, DNS, and scaling policies from your infrastructure profile. Preview environments auto-destroy after 24 hours of inactivity.
Configuration
Manage branches and environments via .git/config.yaml or our CLI. Changes propagate instantly across all connected repos.
environments: production: branch: main region: us-east-1 scale: auto require_approval: true staging: branch: develop region: eu-west-1 scale: fixed max_replicas: 3 branches: protection: main: required_reviews: 2 force_pushes: blocked develop: required_reviews: 1 status_checks: - ci/build - ci/security
Role-Based Access Control
Granular permissions ensure only authorized personnel can trigger deployments or modify environment configurations.
| Role | Branch Access | Preview Deploy | Staging Deploy | Production Deploy |
|---|---|---|---|---|
| Developer | Read/Write | Auto | View | View |
| Tech Lead | Read/Write | Auto | Approve | View |
| Release Manager | Read | View | Approve | Deploy |
| Admin | Full | Full | Full | Full |
Roles can be assigned per-repo, per-organization, or via SCIM provisioning. Audit logs capture every branch modification, environment promotion, and approval action.