← Package directory
Available on winget

Install Goose

A database migration tool. Supports SQL migrations and Go functions.

Install with winget
winget install --id Pressly.Goose
Upgrade
winget upgrade --id Pressly.Goose
Uninstall
winget uninstall --id Pressly.Goose

About Goose

Goose is a database migration tool. Both a CLI and a library. Manage your database schema by creating incremental SQL changes or Go functions. Features - Works against multiple databases: - Postgres, MySQL, SQLite, YDB, ClickHouse, MSSQL, Vertica, and more. - Supports Go migrations written as plain functions. - Supports embedded migrations. - Out-of-order migrations. - Seeding data. - Environment variable substitution in SQL migrations. - ... and more.

Version history

Version Updated Notes
3.27.1 Unknown No changelog items found for version v3.27.1
3.27.0 Unknown What's Changed Added - Preliminary Spanner dialect support (#966) Changed - Minimum Go version is now 1.25 - SQL migration templates no longer include StatementBegin and StatementEnd annotations. These are only needed fo...
3.26.0 Unknown No changelog items found for version v3.26.0
3.25.0 Unknown What's Changed - Upgrade go deps (#976) - Remove references/tests for vertica and add deprecation warnings (#978) - Add Aurora DSQL as a new database dialect to goose Provider (#971) - Add DDL isolation support for Auror...
3.24.3 Unknown What's Changed - Add GOOSE_TABLE environment variable -- lower priority than -table flag, but higher than the default table name. (#932) - Dependency updates New Contributors - @d6o made their first contribution in #932...
3.24.2 Unknown Release notes