bundle installとbundle updateの違いについて

【共有】
Q、「bundle install」と「bundle update」の違いは?
ajax_app(LESSON4-3)で「gem pry-railsを導入し、postsコントローラーのcheckedアクションにbinding.pryを記述して、メモをクリックした時に処理が止まるかを確認しましょう。」とさらっとgemのpry-railを導入して下さいとあります。


そこでPictweet(LESSON2-2)に戻ってpry-railsの導入方法を見直したところ、Gemfileにpry-railsを追記後に「bundle update」とあります。そこで「bundle install」と「bundle update」の使い分けについて気になったのでメンターにお聞きしたことを共有します。

 

 

A、以下の意味に応じて使い分ける


・「bundle install」:gemfile.lockに記載が無い、かつGemfileに記載があるgemをインストールし、その後gemfile.lockを更新する。
  →Gemfileに新しいgemを追記した時や、Gemfileの既存のgemのバージョンを変更した時に使用する。

・「bundle update」:Gemfileのgemを全てインストールし直し、その後gemfile.lockを更新する。
  →バージョンを変更したgem以外のgemのバージョンも変更されてしまうので、このコマンドを使うことはあまりお勧めできない
   (bundle installを行ってもバグが出る場合等にしようする)
https://qiita.com/lasershow/items/1a048d03ddaaba98171e
https://qiita.com/seiya2130/items/49af14cfb29e036546b9