Overview

goose is a database migration tool. Manage your database schema by creating incremental SQL changes and/or Go functions.
Background
github.com/pressly/goose is a fork of bitbucket.org/liamstask/goose with the following changes:
- No config files
- Default
goosebinary can migrate SQL files only - Go migrations:
- We don't go build Go migrations functions on-the-fly from within the
goosebinary - Instead, we let you create your own custom
goosebinary, 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
goosepkg is decoupled from the binary: goosepkg doesn't register any SQL drivers anymore, thus no driver panic() conflict within your codebase!goosepkg 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.