goose icon
goose icon

goose

 Like

goose is a database migration tool. Manage your database schema by creating incremental SQL changes and/or Go functions.

goose screenshot 1

License model

  • FreeOpen Source

Country of Origin

  • US flagUnited States

Platforms

  • Mac
  • Windows
  • Linux
  • Go (Programming Language)
  • Homebrew
  No rating
0likes
0comments
0news articles

Features

Suggest and vote on features
  1.  Command line interface
  2.  Database migration
  3.  Zero configuration
  4.  Golang

 Tags

  • go-lang
  • SQL
  • database-schema

goose News & Activities

Highlights All activities

Recent activities

Show all activities

goose information

  • Developed by

    US flagPressly Inc.
  • Licensing

    Open Source and Free product.
  • Written in

  • Alternatives

    22 alternatives listed
  • Supported Languages

    • English

AlternativeTo Categories

DevelopmentOS & Utilities

GitHub repository

  •  8,735 Stars
  •  589 Forks
  •  97 Open Issues
  •   Updated Jun 28, 2025 
View on GitHub

Our users have written 0 comments and reviews about goose, and it has gotten 0 likes

goose was added to AlternativeTo by Paul on Jun 20, 2024 and this page was last updated Jun 20, 2024.
No comments or reviews, maybe you want to be first?
Post comment/review

What is goose?

goose is a database migration tool. Manage your database schema by creating incremental SQL changes and/or Go functions.

  • No config files
  • Default goose binary can migrate SQL files only
  • Go migrations:
  • We don't go build Go migrations functions on-the-fly from within the goose binary
  • Instead, we let you create your own custom goose binary, register your Go migration functions explicitly and run complex migrations with your own *sql.DB connection
  • Go migration functions let you run your code within an SQL transaction, if you use the *sql.Tx argument
  • The goose pkg is decoupled from the binary:
  • goose pkg doesn't register any SQL drivers anymore, thus no driver panic() conflict within your codebase!
  • goose pkg doesn't have any vendor dependencies anymore
  • We use timestamped migrations by default but recommend a hybrid approach of using timestamps in the development process and sequential versions in production.

Starting with v3.0.0 this project adds Go module support, but maintains backwards compatibility with older v2.x.y tags. Goose supports embedding SQL migrations, which means you'll need go1.16 and up. If using go1.15 or lower, then pin v3.0.1.

Official Links