我刚用gem update mime-types
更新了mime-types gem。更新前gem list
显示mime-types (1.16)
。更新后gem list
显示mime-types (1.17.2, 1.16)
。为什么要显示两个版本?
更多信息:我在同一台计算机上有其他Rails项目。我没有在任何其他项目中更新mime-types gem。从另一个项目的目录(其中mime-types尚未更新)运行gem list
显示mime-types (1.16)
。
答案 0 :(得分:3)
您已安装两个版本。如果要删除旧版本(由于依赖性而无法永远删除),请使用gem cleanup
。
答案 1 :(得分:1)
你有哪个版本的RubyGems? gem -v
这很有趣:我有最新版本的RubyGems,但我的系统行为不同:
gem list
=>所有宝石,所有版本。 无论我在哪里打电话。
gem list --local
=>与以前相同但是在用户范围内。
bundle list
=>项目中的所有宝石(每个宝石一个版本)
bundle update
和gem update
同样如此。
bundle update
将旧版本替换为新版本(捆绑程序依赖于依赖项),但gem update
保留两者。因此,如果您只想保留最新版本,请运行gem cleanup
。
bundle outdated
可能有用:它会在您的项目中显示过时的宝石(基于rubygems.org)
答案 2 :(得分:1)
这可能因为gem依赖而发生。
例如,如果另一个gem依赖于该gem,而另一个gem没有为其指定版本,并且(/或)它会更新,如果它对该gem的版本的依赖性改变了...那么你得到了想法。
有时候我会捆绑一下,看到大量的新版本下载了。一切都是由于改变了...依赖。