rails s bundle execのbundle exec、聞いたことあるけど特に書かなくても問題なく動いてきたのでずっと「なんかgemをいい感じにしてくれるもの」くらいの認識でいました。
多分、そろそろきちんと知っておいた方がいいので調べてみた。
要するに、gemをいい感じにしてくれるものでした。
…それでは何もアップデートがないので、もう少し踏み込んでまとめると、gem Aとgem Bがあるとする。
プロジェクトAではA,B両方使っていて依存関係があり、プロジェクトBではAだけ使っている場合、gemBにアップデートがあるなんてことがあるとプロジェクトBでは勝手にアップデートしてくれという感じだがプロジェクトAではgem Aに影響が出てしまうのでそれは困る。
ここら辺を、プロジェクトごとに臨機応変にバージョン管理してくれるのがbundlerの役割らしい。
便利やん!!
今作っているようなプロダクトだとほとんどgemを使っていないので特に問題ないが、gemがいっぱいあるときには必須なのだと思いました。