我怎样才能找出为什么宝石包已经锁定特定版本的宝石?

ben*_*ben 15 ruby gem bundler

我正在尝试在我的gem文件中指定thrift gem的一个版本.

gem 'thrift', "~> 0.6.0"
Run Code Online (Sandbox Code Playgroud)

当我试图运行时bundle install,我收到此错误:

You have requested:
  thrift ~> 0.6.0

The bundle currently has thrift locked at 0.5.0.
Try running `bundle update thrift`
Run Code Online (Sandbox Code Playgroud)

如何找出导致它被锁定在早期版本的原因?它是否符合我在gem文件中列出的另一个gem的要求?

或者它只是由安装版本为0.5.0引起的,并且在gem文件中指定版本不会更新已安装的gem?

ben*_*ben 20

结果只是运行bundle update thrift将显示锁定版本的内容:

$ bundle update thrift

Fetching source index for http://rubygems.org/
Bundler could not find compatible versions for gem "thrift":
  In Gemfile:
    evernote depends on
      thrift (~> 0.5.0)

    thrift (0.6.0)
Run Code Online (Sandbox Code Playgroud)