Ruby on rails 将gem更新到以前的版本是一个好主意吗
我正在尝试在Rails 4.2应用程序中安装gem: 档案:Ruby on rails 将gem更新到以前的版本是一个好主意吗,ruby-on-rails,ruby,rubygems,Ruby On Rails,Ruby,Rubygems,我正在尝试在Rails 4.2应用程序中安装gem: 档案: gem 'jimson', '~> 0.10.0' 捆绑后,我得到以下错误: Fetching gem metadata from https://rubygems.org/......... Fetching version metadata from https://rubygems.org/.. Resolving dependencies... Bundler could not find compatible ver
gem 'jimson', '~> 0.10.0'
捆绑后,我得到以下错误:
Fetching gem metadata from https://rubygems.org/.........
Fetching version metadata from https://rubygems.org/..
Resolving dependencies...
Bundler could not find compatible versions for gem "rack":
In snapshot (Gemfile.lock):
rack (1.6.0)
In Gemfile:
jimson (~> 0.10.0) ruby depends on
rack (~> 1.4.5) ruby
正如错误所说,jimson依赖于rack 1.4.5,而我当前的rack版本是1.6.0
(我已经在multi_json gem上遇到了同样的错误,我将它从1.11.0降级到1.7.6,现在它要求我降级到rack 1.4.5!!)
用机架1.4.5替换机架1.6.0是一个好主意吗?我不确定是否有其他解决方案可以在不修改已安装gems的情况下使用jimson 降级机架不起作用,因为rails 4.2需要机架1.6 这个gem完全有可能与较新版本的rack一起工作-1.4.5可能只是当时的版本 要测试这个理论,您需要分叉gem并更新依赖项。我会检查gems测试/规范是否仍在运行,然后您可以将gem分支作为:git依赖项添加到应用程序中。也可以考虑向原始作者发送拉请求。
在这种情况下,您不需要执行任何操作,因为有人已经创建了这样的请求,并且travis规范通过了该拉请求,因此您只需要将该拉请求中的更改合并到您的fork中我如何合并该拉请求,如下图所示“只有那些对此存储库具有写访问权限的人才能合并拉请求”您不能合并该拉请求-您必须分叉存储库并将拉请求中的更改应用到您的分叉。我最终分叉了该拉请求的所有者所做的分叉,所以我不必这样做:)感谢您的回答,他们非常有用。