Stages & branches
Adding a stage, and how each one maps to a branch of your repository.
A stage is a deployed copy of your app, and every stage is a branch of your repository. The Branches screen is where you decide which branches get one.
Annotated screenshot of the Branches screen: a Production row at the top showing the branch name and its live URL with an external-link button, then a list of other stages below, each with its branch, URL and a Remove action. An "Add stage" button sits in the header. One row shows an amber "Branch not found in repository" warning. Callout: "One branch, one stage, one set of secrets."
Adding a stage
Add stage asks for a branch name from your repository. That's the whole configuration — Pikku Studio Cloud provisions a dedicated stage for it, with:
- its own address,
- its own database,
- its own secrets and environment variables,
- its own deployment history.
Nothing is shared between stages, which is the point: a staging key can't leak into production, and production data can't be reached from anywhere else.
Long-lived branches are what this screen is for — staging, qa, a branch a client reviews on. A branch that isn't set up here can still be deployed as a temporary preview; it just doesn't get a permanent home.
Production is one of them
Your production stage is marked at the top, and a project has at most one. If you need to move production to a different branch, Set as production does it — the old one becomes an ordinary environment rather than disappearing.
Deploying on every push
Each stage carries its own auto-deploy switch, and it decides what a push to that branch does.
Off — the default for production — a push builds and then waits for you to approve it. On, it goes live by itself.
Turning it on for production asks you to confirm, and the confirmation is worth reading: even with auto-deploy on, a release still stops and waits if it is missing settings it needs, or if it would drop a table. The switch hands over the routine decisions, not the irreversible ones.
When a branch goes missing
If a stage points at a branch that no longer exists in your repository, the row says so. It isn't removed automatically, because a deleted branch is usually a mistake and losing the stage would take its secrets and history with it. Fix the branch or remove the stage deliberately.
Removing a stage
Remove stage asks you to confirm, then tears down that deployment target. Its secrets and its deployment history go with it, so this is a decision rather than a tidy-up.
Where to go next
- Stages & environments — what a stage is and how work flows between them.
- Publishing — how work gets onto a stage.
- Secrets — the per-stage values a deploy needs.
- Custom domains — putting a stage on your own domain.