{"repo":"rafaelespinoza/godfish","free":true,"listed":false,"github":"https://github.com/rafaelespinoza/godfish","clone":"git clone https://github.com/rafaelespinoza/godfish.git","description":"a db migration management CLI and library","language":"Go","stars":14,"topics":["database-migrations","schema-migrations","cassandra","mysql","mariadb","postgres","sqlite3","sqlserver","database","migration"],"license":"ISC","category":"databases-storage","readme_excerpt":"godfish godfish is a database migration manager. It is a CLI and a golang library. The name is an homage to dogfish . features - Use the native query language in the migration files, no other high-level DSLs. - Interface with many DBs: cassandra, mysql, postgres, sqlite3, sqlserver. - Light on dependencies. Release pipeline builds small binaries targeted for one DB driver. - Release binaries are standalone and statically compiled, go is not necessary. Great if you have projects written in different languages and want a consistent experience. - CLI with shell completion for bash, fish, zsh. - Library usage supports embedding migrations. - Not terrible error messages. installation There are multiple ways to get the CLI. The Releases page of the GitHub repository has pre-built artifacts for supported platforms. Each archive file contains an executable binary per driver which targets that DB. As of v0.16.0, releases also include a binary compiled with all drivers. Pick the one(s) you need. Alternatively, install via the Homebrew tap: For Unix-like environments without Homebrew, there is an installation script at scripts/install.sh. Check it out. To install as a golang library, see library usage build An alternative to using a pre-built release to is to build your own. NOTE: these require just and go. Make a CLI binary for the DB you want to use. This tool comes with some driver implementations. Build one like so: From there you could move it to $GOPATH/bin , move it to your proje","default_branch":null,"files":null,"tree":[],"storefront":"/r/rafaelespinoza","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/rafaelespinoza/godfish/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."}