LoginSignup
1
0

More than 3 years have passed since last update.

Heroku デプロイ の流れと、複数のマシンから1つのHerokuサーバーにデプロイする

Last updated at Posted at 2020-08-19

チーム開発を通して学んだことを少しまとめていきます。

① Herokuへデプロイするまでの基本的な流れのおさらい
② 複数のマシンから1つのHerokuサーバーに対してデプロイする
③ 開発ブランチを直接 Heroku にpushする方法
今回の内容は、この3つになります。

Herokuへデプロイするまでの基本的な流れ

(Herokuへの登録が終わっている状態からの説明です)

Herokuにログイン

ターミナル
$ heroku login
又は
$ heroku login --interactive

Herokuに登録したemailとpasswordの入力を求められます。

emailとpasswordの入力が出てこないで下記が出る場合
heroku: Press any key to open up the browser to login or q to exit:
適当なキーを押せばログインできます。
取り消したい場合はqを押します。

ログインできなかったりemailとpasswordの入力を出したい場合は--interactiveオプションをつければ大丈夫。


URLを作成

ターミナル
$ heroku create アプリ名

アプリ名はURLになります。( _ は不可 )

空欄でも勝手に作成してくれるので大丈夫です。
Name is already taken...と出たら誰かが既に使用しているので別の名前に変更します。


Herokuにデプロイ

ターミナル
$ git push heroku master

masterブランチをHerokuにpushする


データベースのマイグレーション

ターミナル
$ heroku run rails db:migrate


初期データを投入する

ターミナル
$ heroku run rails db:seed

これで終了です!


更新したい場合

ターミナル
$ git push heroku master

※ masterブランチをHerokuにpushしている場合

この辺りはよく見かける内容かと思います。


次からは、別のPC(又は別の開発者)からアプリ開発やデプロイを行う場合の説明です。

複数のマシンから1つのHerokuサーバーに対してデプロイする

$ heroku create アプリ名
$ git push heroku master
別のPC(又は別の開発者)のHerokuへ登録したメールアドレスを使って、既にCollaboratorとして登録している。
最初にHerokuへデプロイする方は上記を行っているものとします。


別のPCでアプリの開発とデプロイを引き続き行う場合、
・ リポジトリをクローン
・ リモートリポジトリを登録する。
という流れになります。

Herokuからまずクローンする

ターミナルでcd desktop等にしてから下記をするとクローンできます。

ターミナル
$ heroku git:clone -a アプリ名


リモートリポジトリを登録する

アプリケーションディレクトリに入ってから下記を実行します。

ターミナル
$ heroku git:remote --app  アプリ名

リポジトリを登録することができたので、デプロイできる..はずです


開発ブランチをHerokuのmasterブランチにデプロイする方法

デプロイの際、呪文のように唱えていた$ git push heroku master...
実は、masterへマージしていない状態でも開発ブランチを直接Herokuにデプロイできます。

開発ブランチを直接Herokuにデプロイ

ターミナル
$ git push heroku 開発ブランチ名:master

開発ブランチを直接Herokuにデプロイして動作確認ができるので便利ですね。


最後に

最初は全く知らなかったことばかりでした。(今もです..笑)
チーム開発を何度か経験してみて、学んだことを少しずつでも共有できればと思っています。
少しでも参考になれば嬉しいです。
間違いなどございましたら、ご指摘ください。
以上です。

参考:
https://qiita.com/Chinats/items/c00df6e3ca81184606fe

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0