我从Gemfile中删除了一个gem'mygem',但刚才我意识到它仍在安装。
那么如何告诉bundler重新扫描Gemfile并更新Gemfile.lock,不用更新每个gem?
来自php,我就是这样做的:composer update nothing
。是否有捆绑器的等效物?
答案 0 :(得分:32)
您只需运行bundle
或bundle install
即可根据您的Gemfile安装gem。这将从您的Gemfile.lock文件中删除mygem
的实例。但是,它不会从您的系统中删除gem。为此,请运行gem uninstall mygem
。
并非完全相关,但仍有帮助:
bundle outdated
会向您显示不在最新版本中的宝石。不要太与这个列表捆绑在一起 - 拥有不在最新版本上的宝石是相当普遍的,因为有些宝石是作为依赖项安装的。一个宝石可能需要另一个宝石的旧版本。bundle upgrade mygem
将升级 该gem,并使其依赖项更新。这意味着其他宝石也可以升级或安装。答案 1 :(得分:1)
清理bundler目录中未使用的gem: 捆绑清洁 - 强制