Railsで出てくるbinについて説明します。
binとは
Railsアプリの開発で使用する実行コマンドを格納しているディレクトリのこと。
binディレクトリはどこで確認できるのか?
以下コマンドで確認ができる。
$ ls -1FA ./bin
出力結果
bundle*
rails*
rake*
setup*
spring*
webpack*
webpack-dev-server*
yarn*
これらコマンドはどのように使うことができるのか?
通常、bundlerを使って依存関係を解決しているため、実行する際に bundle exec rails のように”bundle exec”を付ける。
これが、binディレクトリ内のコマンド実行時には不要となる!
コマンド実行時に、”bin/rails s”などのようにbinを付けるのはなぜか?
これは”rails”がbinのコマンドであることを表している。
bundlerとは
“Bundler”はライブラリ名
使用するコマンドは”bundle”
Bundlerとは、gemを管理するためのgemであり、
gem同士のバージョンの依存関係を解決してくれる役割を持っている。
この依存関係を解決したバージョンが記載されているファイルがGemfile.lock
コメント