ruby-on-rails $Bundle安装和$Bundle更新之间的区别

wa7juj8i  于 2023-01-06  发布在  Ruby
关注(0)|答案(2)|浏览(154)

你能告诉我,这两者有什么区别吗?

$Bundle update

以及

$Bundle install
gmxoilav

gmxoilav1#

bundle updatebundle install都可以安装您在Gemfile中指定但在gem中缺失的gem。
但是bundle update在升级方面还做了一件事:
1.如果在宝石文件中指定的宝石没有版本,它将升级到任何最新的。
1.如果Gemfile中指定的gem具有使用~>控制的版本,则它将升级到最后一位处的最新,即修补程序版本。
例如,如果您在Gemfile中有一个gem

'foo_gem', '~> 2.1.0'

bundle update将检查云中是否有较新版本的2.1.x。假设您的当前版本是2.1.2,而云中的最新版本是2.1.5,它将安装2.1.5。但如果2.2.6是最新版本,它将不执行任何操作。

在我看来更好的练习

1.总是添加版本到像rails这样的关键gem。
1.在大多数情况下坚持使用bundle install(或者bundle,默认值为install)。只有在确实需要并且你已经为结果做好了充分准备的情况下才使用bundle update

9udxz4iz

9udxz4iz2#

Bundle Update s指定的gem(如果未指定,则为所有gem),忽略Gemfile.lock中指定的以前安装的gem。通常,应使用bundle install在计算机之间安装完全相同的gem和版本。

相关问题