是什么让这个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
在第78行看看项目的Gemfile.lock
:
jbuilder (2.4.1)
activesupport (>= 3.0.0, < 5.1)
multi_json (~> 1.2)
2.4.1
宝石的jbuilder
版本取决于activesupport
(它是Rails的一部分)版本< 5.1
。您需要至少更新到jbuilder:2.6.3
以允许更新Rails到5.1
。 jbuilder:2.6.4
终于放松了对activesupport >= 3.0.0
的依赖,甚至允许当前的Rails 6.0beta版本。
由barlop添加
回答者在评论中提到,请参阅https://rubygems.org/gems/rails获取宝石的依赖关系
(它包括版本,因此,哪些版本的rails取决于依赖gem的版本)