開発ブランチをHerokuにデプロイ
作業中の開発ブランチをHerokuにデプロイしようとしたら意外とうまくかなかったので、手順を記録しました。
環境&前提的なところ
- mac
- ruby 2.5.0p0
- Rails 5.1.5
- mainブランチと開発ブランチ(develop)がある想定。
- mainブランチをHerokuにデプロイ済みでこれから開発ブランチをデプロイしたい。
1. mainブランチと開発ブランチを最新の状態にする
mainブランチ、開発ブランチ(develop)共に最新の状態かつローカル上にdiffがない状態にします。
developを最新にする
$ git checkout develop
$ git fetch
$ git pull origin develop
mainを最新にする
$ git checkout main
$ git fetch
$ git pull origin main
2. Herokuにpushする
mainブランチをherokuにpushする
$ git push heroku main
開発ブランチ(develop)をherokuのmainブランチにpushする
$ git push heroku develop:main
※git lfsはサポートされないそうですのでご注意ください。
ちなみに、最新なのに「最新じゃないよ」的なエラーが出ました。エラーの指示にしたがって確認を行なって尚エラーが解消されない場合は、-f
で強制的にpushするという技もあるとかないとか…。
3. データベース周りを更新する
ここからは必要に応じてどうぞ;
データベースをリセットする
$ heroku pg:reset DATABASE_URL
※リセットしない場合は実行する必要がありません。実行すると確認のためにプロジェクト名の入力を求められるので指示に従って入力します。
データベースをマイグレーション
$ heroku run rails db:migrate
初期データを投入
$ heroku run rails db:seed