是什么使该Rails项目保持旧的Rails版本(或者我如何找出将其保持旧版本的Rails)?
我在看
https://github.com/mhartl/action_cable_chat_app
我克隆了它,或者分叉并克隆了它。
被授予,他将其保存在自己的Gemfile中
gem 'rails', '5.0.1'
但是我将其更改为
gem 'rails'
我做了bundle install
或bundle update
或bundle update rails
,它从很旧的版本(5.0.1)升级到了rails 5.0.7.2
,仍然很旧。
如果我cd ..
,那么我会看到我的全局rails版本,那是最新版本。 rails 5.2.3
我可以猜想,他的Gemfile中可能有一些需要早期Rails版本的宝石,这就是阻碍它发展的原因。但是我无法验证,如果不知道是哪个。
我尝试查看Gemfile.lock,它显示rails (5.0.7.2)
,所以我尝试了rm Gemfile.lock
,然后捆绑了更新导轨,仍然是rails 5.0.7.2
答案 0 :(得分:1)
在第78行查看项目的Gemfile.lock
:
jbuilder (2.4.1)
activesupport (>= 3.0.0, < 5.1)
multi_json (~> 1.2)
jbuilder
宝石的2.4.1
版本取决于activesupport
(属于Rails的一部分)版本< 5.1
。您将需要至少更新到jbuilder:2.6.3
,才能将Rails更新到5.1
。 jbuilder:2.6.4
最终放松了对activesupport >= 3.0.0
的依赖,这甚至允许当前的Rails 6.0beta版本。
由barlop添加
answerer在评论中提及,请参见https://rubygems.org/gems/rails了解宝石的依赖性
(并且包括版本,因此,哪个版本的rails取决于哪个版本的从属gem)