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:

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