惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

L
LangChain Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
雷峰网
雷峰网
量子位
V
V2EX
S
SegmentFault 最新的问题
月光博客
月光博客
博客园 - 【当耐特】
Hugging Face - Blog
Hugging Face - Blog
V
Visual Studio Blog
大猫的无限游戏
大猫的无限游戏
T
Tailwind CSS Blog
博客园_首页
博客园 - Franky
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
美团技术团队
Y
Y Combinator Blog
The Cloudflare Blog
C
Check Point Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
腾讯CDC
B
Blog
Stack Overflow Blog
Stack Overflow Blog
P
Proofpoint News Feed

Supabase Blog

AI Agents Know About Supabase. They Don't Always Use It Right. Custom OIDC Providers for Supabase Auth 100,000 GitHub stars Supabase docs over SSH Navigating Regional Network Blocks Supabase Joins the Stripe Projects Developer Preview Log Drains: Now available on Pro Supabase Storage: major performance, security, and reliability updates Supabase incident on February 12, 2026 Hydra joins Supabase X / Twitter OAuth 2.0 is now available for Supabase Auth BKND joins Supabase Supabase is now an official Claude connector Supabase PrivateLink is now available Introducing: Postgres Best Practices When to use Read Replicas vs. bigger compute Introducing TRAE SOLO integration with Supabase Supabase Security Retro: 2025 Sync Stripe Data to Your Supabase Database in One Click Building ChatGPT Apps with Supabase Edge Functions and mcp-use Own Your Observability: Supabase Metrics API Introducing iceberg-js: A JavaScript Client for Apache Iceberg Introducing Supabase for Platforms Adding Async Streaming to Postgres Foreign Data Wrappers Build "Sign in with Your App" using Supabase Auth Introducing Seven New Email Templates for Supabase Auth The new Supabase power for Kiro Introducing Supabase ETL Introducing Analytics Buckets Introducing Vector Buckets
Supabase CLI v1 and Management API Beta
Bobbie Soedirgo, Qiao Han · 2022-08-15 · via Supabase Blog

Supabase CLI v1 and Management API Beta

Today we are moving the Supabase CLI v1 out of beta. The Supabase CLI is capable of managing database migrations and generating TypeScript types. Follow these install instructions to get started.

In addition, we are releasing a Management API (in beta). The Management API is a REST API that allows you to manage organizations, projects, Edge Functions, and more. You can read the API docs or interact with the Management API from the Supabase CLI v1.

(Note: The Management API was previously called the Admin API.)

Watch the CLI team announcing the new features.

If you've used Supabase Edge Functions, you've used the Supabase CLI. We're extending it to let you manage organizations and projects.


_10

supabase login

_10

supabase orgs list

_10

supabase projects create my-project --org-id cool-green-pqdr0qc --db-password ******** --region us-east-1


Once your new Supabase project is created, use the CLI to link it locally to begin development.


_10

supabase link --project-ref <project-id>


View the Supabase CLI docs for the full list of available commands.

You asked for more database migration support, and we listened. We've made improvements to manually-written migrations and auto generated schema diffs.

Schema diff-ing#

Previously we supported schema diff-ing using PgAdmin. We found that the tool did not account for default privileges when generating role grants. This leads to verbose statements when diff-ing complex schema changes.

To improve the usability of db diff command, we are introducing another tool, migra, via the --use-migra experimental flag. We found that migra runs faster and produces more concise DDL statements. While the generated scripts are not perfect, we hope this tool helps you iterate quicker on your migration scripts. Over time (and with your feedback) we hope to improve schema-diffing to cover all edge-cases.


_10

$ supabase db diff --use-migra --file file_name

_10

# Creates a DDL script: supabase/migrations/<datetime_string>_file_name.sql


Running the above command diffs the public schema of your local development database against a fresh shadow database. You may specify other schema by passing in the --schema flag multiple times or as a comma separate list. More details in our migration guide.

In the long-term we hope to consolidate on a single diff-ing tool which is perfect, but diff-ing is hard so we would need your help and feedback to improve tooling.

Manual migrations#

You can test manual migrations locally without data loss using local branching. Run the following commands to clone your local database to a new branch.


_10

supabase db branch new my_branch

_10

supabase db branch switch my_branch


Now you can run any DDL statements from Studio UI's SQL Editor. To undo the changes, simply switch back and delete the new branch.


_10

supabase db branch switch main

_10

supabase db branch delete my_branch


Automating migrations and tests on your CI / CD pipeline gives developers more confidence that each PR contains a working migration script. CLI v1 focuses on both local and GitHub Actions support for the following workflows.

Test all migrations on a fresh local database:


_10

supabase init

_10

supabase start


Release schema changes to staging and production:


_10

$ supabase link --project-ref $PROJECT_ID

_10

$ supabase db push


We created an example project showing how to set up GitHub Actions to test and migrate with Supabase CLI v1.

You can now generate TypeScript types using the CLI:


_10

# in a project set up with the CLI:

_10

supabase gen types typescript --local

_10

supabase gen types typescript --db-url $SUPABASE_DB_URL


Of course, the types aren't very useful on its own, you need some way to consume it. For that, stay tuned for tomorrow! 😉

The CLI is the first consumer of our new Management API. Over the next few weeks, we'll be adding the endpoints needed to programmatically manage your Supabase projects and organizations. This is ideal for CI/CD workflows and spinning up test environments.

Here's an example of deploying a new project from the command line (generate your access token from the Supabase Dashboard).


_10

curl 'https://api.supabase.com/v1/projects' \

_10

-H 'Authorization: Bearer <[your-access-token](https://supabase.com/dashboard/account/tokens)>' \

_10

-H "Content-Type: application/json" \

_10

-d '{"name": "my-project", "organization_id": "cool-green-pqdr0qc", "region": "us-east-1", "plan": "free", "db_pass": "********"}'


The response JSON will match the example below:


_10

{

_10

"id": "abcdefghijklmnopqrst",

_10

"organization_id": "cool-green-pqdr0qc",

_10

"name": "hello",

_10

"region": "us-east-1",

_10

"created_at": "2022-08-12T17:37:11.88819Z"

_10

}


Check out the API docs to browse all the functionality added so far.

The new API also opens the door to a whole new suite of integrations, including Zapier, Terraform, Pulumi etc. We're looking forward to seeing how the dev community interacts with these new public endpoints. Try it out and let us know which functionality you'd like to see next.