Rails チュートリアル第1章 躓いたポイント


基本ググりまくってますが、進めててうえ〜って思った箇所を抜粋します。
最初にgitの大まかな流れは勉強しといた方が良いかも。

(参考)https://qiita.com/suzutsuki0220/items/be10604e9e13126eba44

<目次>

  • 1.4.3 Bitbucket
    • git push -u origin --all(リスト1.11)でエラーが出る
  • 1.5.3 Herokuにデプロイする (2)
    • Heroku関連コマンドが使えない
    • ブラウザに"Hello,world!"のページが出力されない
      • 原因①:そもそもgit pushしていない
      • 原因②:heroku上に複数アプリがあるため干渉していたり、正常にデプロイ出来ていない

1.4.3 Bitbucket

git push -u origin --all(リスト1.11)でエラーが出る

$ git push -u origin --all
----

Bad owner or permissions on /home/hoge/.ssh/config

ググった結果、configファイルにはパーミッションというアクセス許可範囲が定められていて、AWSのデフォルトだとそれがガバガバなそう。ガードが甘すぎると怒られてしまうようです。
そこで、パーミッションの範囲をちゃんと定める命令を出します。

# パーミッションを限定
$ chmod 600 ~/.ssh/config

この後にgit push -u origin --allをかましてやると、上手く動いてくれました。

※参考にしたサイト↓
https://sekisuiseien.com/computer/11256/

1.5.3 Herokuにデプロイする (2)

Heroku関連コマンドが使えない

デフォだと、それまでherokuが使えていても、cloud9をログアウト・タイムアウトする度にherokuが使えなくなります。以下のエラーが出ます。

$heroku --version
heroku: command not found

herokuのversion確認だけでなく、heroku login --interactive等も同様のエラーが出ます。

このエラーの修正ですが、
まずは通常時はツリーに表示されない、いわゆる隠しファイルである.bash_profileに以下のコードを追加します。
(.bash_profileの位置はhttp://rakuda3desu.net/rails-railstutorial211-241/
を参照させて頂きました)

# $PATHの設定を追加
PATH=/usr/local/heroku/bin:$PATH

追加後、インスタンスを再起動すると・・・
(インスタンスの再起動方法はわかりづらいので、https://qiita.com/at0arumati/items/2001a7d48384231d5e01
で解説しています!)

↑このようにheroku関連のコマンドが使えるようになりました。

※参考にしたサイト↓
http://rakuda3desu.net/rails-railstutorial211-241/

ブラウザに"Hello,world!"のページが出力されない

・原因①:そもそもgit pushしていない

gitを理解していない初学者にありがち。(つい最近までの私。)
herokuに更新内容を送らないといけません。

手順としては、

gemfile等の編集(要はアプリ内容の変更)

 git commit -a -m "Update Gemfile for Heroku"

 git push heroku master

これで私はいけました。

・原因②:heroku上に複数アプリがあるため干渉していたり、正常にデプロイ出来ていない

私はこのパターンでした。デプロイの命令自体は上手くいくのですが、ブラウザ上で表示すると、「Heroku | Welcome to your new app!」となってしまい、Hello,world!が表示される雰囲気はありませんでした。


(このような画面が表示されます)

この場合は、Heroku上に既存のアプリを一度全て削除することで解決しました。

# アプリの削除(確認無し)
heroku apps:destroy --app アプリ名 --confirm アプリ名

これで $heroku createからやり直しましょう。

※参考にしたサイト↓
http://slowquery.hatenablog.com/entry/2014/04/06/112330

以上になります。

progateやドットインストールばかり学習していた私には障壁の多いRailsチュートリアルですが、躓きながらも確実に成長していきたいです。
各章終わる度に記事書いて行きたいと思います。