13

为了避免崩溃,我为我的每个 gem 指定了版本号Gemfile

gem 'sass-rails',   '~> 3.1.5'
gem 'coffee-rails', '~> 3.1.1'
gem 'uglifier', '~> 1.0.3'
gem 'haml-rails', "~> 0.3.4"
gem 'simple_form', '~> 1.5.2'

但我至少想知道是否有一些我没有安装的更新版本。例如,simple_form 2.0.0已发布。

我可以在 RubyGems 上检查每个 gem,但必须有一个自动工具来完成这项工作,对吗?

4

3 回答 3

22

使用最新版本 (1.1) 的捆绑器,您可以执行此操作bundle outdated请参阅此页面。

要将捆绑器更新到最新版本,您可以运行gem update bundler

gazler@gazler-laptop:~/development/rails/livestax$ bundle outdated
Fetching gem metadata from http://rubygems.org/.......
Fetching gem metadata from http://rubygems.org/..

Outdated gems included in the bundle:
  * multi_json (1.2.0 > 1.0.3)
  * activesupport (3.2.3 > 3.1.0)
  * activemodel (3.2.3 > 3.1.0)
  * rack (1.4.1 > 1.3.5)
  * rack-cache (1.2 > 1.0.3)
  * sprockets (2.4.0 > 2.0.3)
  * actionpack (3.2.3 > 3.1.0)
  * mime-types (1.18 > 1.17.2)

还有Gemnasium,但我从未使用过。

于 2012-04-09T12:43:46.550 回答
1

同意@Gazler,您可以使用 bundle outdated 查看可用的最新 gem。您还可以使用 SourceNinja (www.sourceninja.com) 之类的服务,当有更新的 gem 可用时,它会向您发送电子邮件通知。

披露:我在 SourceNinja 工作。

于 2012-04-18T17:28:17.323 回答
1

bundle outdated将完成这项工作。但这不是自动化的。如果你想自动化这个过程,你应该使用VersionEyeVersionEye可以监控您在 GitHub 或 Bitbucket 上的 Gemfile,并通过电子邮件通知您项目中过时的依赖项。

顺便一提。我是创建 VersionEye 的人。

于 2014-09-15T17:31:03.383 回答