bundle exec

参考にしたサイト

https://qiita.com/diskkid/items/0d000a42df04c561ca0f

bundle exec あんまり意味わかってなかったけど、ちょっと理解が深まったので記述。

bundlerはgemのバージョンが合わない問題を解決するためにあるもの。Gemfile.lockはそのためにどのバージョン使うのかとか、どのジェムとどのジェムが依存関係にあるのかとかが出力されてるファイル。基本的に自分でいじることはない。(いじるのはGemfileの方でこちらに書いた物がinstallされる)。

別の言い方をするとGemfileに書いた物がinstallされるけど、依存関係を壊さないようにbundlerさんが選んでくれて、lockの方にここに書いてある通りなら動くよって感じでロックかけてる感じなのかな?

 

ちなみにbundlerはrailsのgem管理をしてくれるもの。Homebrewはmac用のパッケージ管理システム。