阅读前的免责声明:我已经解决了这个问题,但是我问是因为我仍然不知道其背后的原因。
我正在研究将资产拉入资产管道的古老宝石。我不敢肯定我最初是如何使用rails plugin new static_assets
创建该gem的。
由于它是宝石,因此Gemfile并不太复杂(我尚未对其进行任何更改):
source "http://rubygems.org"
gemspec
# jquery-rails is used by the dummy application
gem "jquery-rails"
但是Gemfile.lock有数十个gem和依赖项显示。在大多数情况下,这些宝石似乎都是最新的。
当我运行bundle update
时,有几个gem可以恢复到较旧的版本;例如Rails 5到Rails 3。
我相信我通过将Gemfile更新为
gem 'jquery-rails', '~> 4.3', '>= 4.3.3'
但我想知道为什么会这样。
我对Gemfile.lock的创建和更新方式不太熟悉,但给人的印象是它基于Gemfile,从Gemfile中提取了所有gems及其依赖项。如果Gemfile.lock中的所有gem都依赖于jquery-rails
,为什么它会如此单方面地,如此地自动降级呢?