’’Branching via the dashboard | Supabase DocsSkip to content
Home

Branching via the dashboard

Create, manage, review, and merge branches directly in the dashboard

You can create, manage, review, and merge Supabase branches directly via the dashboard. This is useful for quick testing, prototyping, or when you prefer to work in a no-code way. You can also connect a Supabase branch to a GitHub branch at a later time if needed.

How Branching works#

You can do the following directly from the Supabase dashboard:

  • Create preview branches
  • Make changes to your public schema or edge functions
  • Merge these changes back into production when ready
  • Pull in updates from production

Enable branch management via the dashboard#

This functionality is currently in beta and requires opting in. To opt in you must enable the feature preview:

  1. Open the user menu by clicking on your user icon in the top right.
  2. Select Branching via dashboard.
  3. Click Enable feature.

Creating a branch#

Once you've enabled the feature, you can create a new branch:

  1. Click the arrows next to the branch name in the top menu bar. (The top menu bar has the format YOUR_ORGANIZATION / YOUR_PROJECT / CURRENT_BRANCH_NAME.)
  2. Click Create branch.

Making changes to a branch#

Use the branch selector in the top bar to change to your branch. Any changes you make (including SQL run in the SQL editor, table editor changes, and configuration changes) are now made against the currently selected branch.

You can also use the branch's API keys and connection strings to run changes against the branch from your own code or SQL client.

Creating a merge request#

To review and merge changes from a branch back into your production branch, you must first create a merge request. There are two ways to do this.

The first is to click the merge request button next to the branch selector that's located in the top menu. This will create the merge request and redirect you to the merge page where you can review and merge any changes.

The second is to click on manage branches from within the branch selector, then in the left hand navigation you can click on merge requests. From here you can view all open merge requests and create new ones.

Pulling changes from production into a branch#

When reviewing a merge request you may see a notice at the top of the page asking you to update your branch. This appears when your preview branch has drifted from your production branch. There may be public schema or edge function changes that have been made after your preview branch was created. Clicking update branch will attempt to pull in these changes, but be aware that by doing this your existing edge functions will be replaced. Any new edge functions created on the preview branch will remain untouched.

Limitations#

There are a few limitations you should be aware of before deciding to use branching without git.

  • Custom roles created through the dashboard are not captured on branch creation
  • Branches can only be merged to main; merging between preview branches is not supported
  • If your branch is out of date, you can pull in latest changes from main, but keep in mind that all functions will be overwritten
  • Deleting functions must be done manually on main branch
  • Migration conflicts must be manually resolved on the preview branch
  • If you have run migrations on main, new branches will be created from existing migrations instead of a full schema dump
self.__next_f.push([1,"M0.625 9.8252C0.625 4.44043 4.99023 0.0751953 10.375 0.0751953C15.7598 0.0751953 20.125 4.44043 20.125 9.8252C20.125 15.21 15.7598 19.5752 10.375 19.5752C4.99023 19.5752 0.625 15.21 0.625 9.8252ZM9.3584 4.38135C9.45117 4.28857 9.55518 4.20996 9.66699 4.14648C9.88086 4.02539 10.1245 3.96045 10.375 3.96045C10.5845 3.96045 10.7896 4.00586 10.9766 4.09229C11.1294 4.1626 11.2705 4.26025 11.3916 4.38135C11.6611 4.65088 11.8125 5.0166 11.8125 5.39795C11.8125 5.5249 11.7959 5.6499 11.7637 5.77002C11.6987 6.01172 11.5718 6.23438 11.3916 6.41455C11.1221 6.68408 10.7563 6.83545 10.375 6.83545C9.99365 6.83545 9.62793 6.68408 9.3584 6.41455C9.08887 6.14502 8.9375 5.7793 8.9375 5.39795C8.9375 5.29492 8.94873 5.19287 8.97021 5.09375C9.02783 4.82568 9.16162 4.57812 9.3584 4.38135ZM10.375 15.6899C10.0933 15.6899 9.82275 15.5781 9.62354 15.3789C9.42432 15.1797 9.3125 14.9092 9.3125 14.6274V9.31494C9.3125 9.0332 9.42432 8.7627 9.62354 8.56348C9.82275 8.36426 10.0933 8.25244 10.375 8.25244C10.6567 8.25244 10.9272 8.36426 11.1265 8.56348C11.3257 8.7627 11.4375 9.0332 11.4375 9.31494V14.6274C11.4375 14.7944 11.3979 14.9575 11.3242 15.104C11.2739 15.2046 11.2075 15.2979 11.1265 15.3789C10.9272 15.5781 10.6567 15.6899 10.375 15.6899Z"])’’’’