{"repo":"pressly/goose","free":true,"listed":false,"github":"https://github.com/pressly/goose","clone":"git clone https://github.com/pressly/goose.git","description":"A database migration tool. Supports SQL migrations and Go functions.","language":"Go","stars":11337,"topics":["database","sql","migration","schema","postgres","mysql","sqlite","golang","go","migrations"],"license":null,"category":"databases-storage","readme_excerpt":"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, MariaDB, Spanner, 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. Install This will install the goose binary to your $GOPATH/bin directory. Binary too big? Build a lite version by excluding the drivers you don't need: For macOS users goose is available as a Homebrew Formulae: See installation documentation for more details. Usage Click to show goose help output Commonly used commands: create &nbsp;•&nbsp; up &nbsp;•&nbsp; up-to &nbsp;•&nbsp; down &nbsp;•&nbsp; down-to &nbsp;•&nbsp; status &nbsp;•&nbsp; version create Create a new SQL migration. $ goose create add some column sql $ Created new file: 20170506082420 add some column.sql $ goose -s create add some column sql $ Created new file: 00001 add some column.sql Edit the newly created file to define the behavior of your migration. You can also create a Go migration, if you then invoke it with your own goose binary: $ goose create fetch user data go $ Created new file: 20170506082421 fetch user data.go up Apply all available migrations. $ goose up $ OK 001 basics.sql $ OK 002 next.sql $ OK 003 and again.go up-to Migr","default_branch":null,"files":null,"tree":[],"storefront":"/r/pressly","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/pressly/goose/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}