2分2019年9月からGopherの仲間入りを果たしたのですが、golangのmigrationツールって色々あって、どれ使えば良いのか判断しにくいなと思いました。9月末にmigrationの調査をしてみたので、存在するmigrationツールや、それらのメリットデメリットをまとめてみたいと思います。ちなみに、筆者はgolangの前はRailsを使っていたので、migrationは最初から付いているものだと思い込んでいました。17どれ使えば良いの?star数が100以上の中でもgoose、sql-migrate、golang-migrate/migrate、gh-ostならば正直、どれでも良いのでは?ぐらいには考えています。gh-ostはmysqlに対してのサポートで、CloudSQLへの対応はできません。有名どころのmigrationツールのサンプルを作ってみた以下の3つのossについてgolang-migrate/migratesql-migrategoosedockerを利用して、各種migrationのコマンドを試せるようなサンプルを作ったので、ぜひ参考にしてみてください。statusstatusの表示内容はgolang-migrate/migrateと違いますね。down結局何使えばよいのか今回は以下の3つを主に比較しましたgolang-migrate/migratesql-migrategooseこれらのツールの違いはほとんど感じられませんでした。sql-migrateがdry-runをすることができる点において少し優秀という印象でしょうかgolang-migrate/migrateはstar数が多かったですが、なぜstar数が多くつくのか理解できませんでした。以下の点が、その2つの共通点であり、migrationで満たしてほしい条件だと思っていますCLIで使えるup/downでmigrationができる環境ごとに設定することができるというところで、migrationについてのまとめになります。Analyticsを利用しています。目次migrationツール群(star数100以上)どれ使えば良いの?有名どころのmigrationツールのサンプルを作ってみたgolang-migrate/migratesql-migrategoose結局何使えばよいのか。