適当に扱ってたbundleが重要だった話
これは自分用のメモです
今まではbundleはgemのことを何かやってくれているのだな〜ぐらいにしか考えていなかった。
gem install bundler
これはbundlerをインストールするためのコマンドです。
ではbundlerとは?
bundlerとは、プロジェク内で使うGemのパッケージ管理ツールです。
bundlerを利用することによって、アプリケーション単位でgemを管理できるのです。
似たようなものとしては、rbenvです。
rbenvはプロジェクトごとにRubyのバージョンを管理します。また、Ruby自体のバージョンは、プロジェクト毎にrbenvで管理します。
rbenvと同じで
bundlerもプロジェクト毎にGemを管理して、gemのバージョンは、プロジェクト毎にBundlerで管理する。
bundlerでできることは?
上記で示したこと以外にも重要なこととして、Bundlerを利用することで、アプリケーション単位でgemを管理できる。即ち、システム側にはgemはインストールせずに、アプリケーションディレクトリにインストールできるということです。システムに依存しないため、アプリケーション内でのgemのバージョンの整合性の問題はなくなる。