Heroku へ HTTPS でデプロイする


昨年末に HerokuHTTPS 経由での Git に対応 しました
これで SSH が通らない環境でもデプロイできますね

最新の Heroku Toolbelt がインストールしている前提で話を進めていきます。

新しいアプリケーションを作る場合

1. Heroku に新しいアプリケーションを作る。この際に --http-git を指定する。

$ heroku apps:create --http-git
Creating アプリケーション名... done, stack is cedar-14

2. 新しい git レポジトリを作る

$ git init

3. Heroku を git のリモートとして登録する。

$ heroku git:remote -a アプリケーション名
Git remote heroku added

4. 確認する。

$ git remote show heroku
* remote heroku
  Fetch URL: https://git.heroku.com/アプリケーション名.git
  Push  URL: https://git.heroku.com/アプリケーション名.git

Fetch URL と Push URL が https で始まっていれば OK です

既存のアプリケーションを SSH から HTTPS に変更する場合

1. まずはこんな感じで SSH 経由になっているはず([email protected]

$ git remote show heroku
Fetching repository, done.
* remote heroku
  Fetch URL: [email protected]:アプリケーション名.git
  Push  URL: [email protected]:アプリケーション名.git
  HEAD branch: master
  Remote branch:
    master tracked
  Local ref configured for 'git push':
    master pushes to master (local out of date)

2. heroku git:remote --http-git で変更しましょう。

$ heroku git:remote --http-git
Git remote heroku updated

3. もう一度1のコマンドで確認すると…

$ git remote show heroku
* remote heroku
  Fetch URL: https://git.heroku.com/アプリケーション名.git
  Push  URL: https://git.heroku.com/アプリケーション名.git
  HEAD branch: master
  Remote branch:
    master tracked
  Local ref configured for 'git push':
    master pushes to master (local out of date)

ちゃんと HTTPS になってますね