Matthias Kadenbach de7ffa60cc update readme
2017-02-09 20:07:04 -08:00
2017-02-09 20:00:38 -08:00
2017-02-09 19:42:48 -08:00
2017-02-09 19:42:48 -08:00
2017-02-09 19:52:50 -08:00
2017-02-09 13:47:28 -08:00
2017-02-08 19:54:50 -08:00
2017-02-09 20:03:56 -08:00
2017-02-07 22:01:29 -08:00
2017-02-09 18:23:08 -08:00
2017-02-09 12:03:03 -08:00
2017-02-09 18:23:08 -08:00
2017-02-09 18:19:13 -08:00
2017-02-09 18:26:58 -08:00
2017-02-09 20:07:04 -08:00
2017-02-09 18:16:16 -08:00
2017-02-09 18:19:13 -08:00

migrate

Build Status GoDoc Coverage Status

Database migrations written in Go. Use as CLI or import as library.

Databases

Database drivers are responsible for applying migrations to databases. Implementing a new database driver is easy. Just implement database/driver interface

Migration Sources

Source Drivers read migrations from various locations. Implementing a new source driver is easy. Just implement the source/driver interface.

CLI usage

CLI Documentation

Example:

go get -u -tags 'postgres' -o migrate github.com/mattes/migrate/cli

migrate -database postgres://localhost:5432/database up 2

Use in your Go project

import (
  "github.com/mattes/migrate/migrate"
  _ "github.com/mattes/migrate/database/postgres"
  _ "github.com/mattes/migrate/source/github"
)

func main() {
  m, err := migrate.New("github://mattes:personal-access-token@mattes/migrate_test",
    "postgres://localhost:5432/database?sslmode=enable")
  m.Steps(2)
}

Migration files

Each migration version has an up and down migration.

1481574547_create_users_table.up.sql
1481574547_create_users_table.down.sql

Development, Testing and Contributing

Guide

Alternatives

Description
Database migrations. CLI and Golang library.
Readme MIT
Languages
Go 98.6%
Makefile 1%
Dockerfile 0.3%