我有我的Gemfile

gem 'rails', '4.0.0'
gem 'sass-rails', '~> 4.0.0'

这很好用 . 如果我运行bundle更新,它会说"Using sass-rails (4.0.1)" . 现在,如果我尝试将其更改为使用4.0.0( gem 'sass-rails', '4.0.0' )并运行bundle update,则会给出错误:

Bundler could not find compatible versions for gem "railties":
  In Gemfile:
    rails (= 4.0.0) ruby depends on
      railties (= 4.0.0) ruby

    sass-rails (= 4.0.0) ruby depends on
      railties (4.0.1)

我不明白为什么较低版本的sass-rails需要更高版本的铁路?这对我来说很奇怪,怎么会这样?事实上这是谎言!

在另一个项目(Rails Tutorial sample_app)中我有

gem 'rails', '4.0.0'
gem 'sass-rails', '4.0.0'

并且只有栏杆(4.0.0),但捆绑更新工作正常 . 所以看来上面的错误不是问题 . 然后我不知道是什么?!

我在这里找到了更多信息 - can't get gemfile to allow for bundle update(如果我在gemfile中切换rails和sass-rails的顺序,那么4.0.0工作正常) . 然而,为什么我的Gemfile在一个项目中工作正常而另一个项目在相同的sass-rails和rails gems以及相同的栏杆中工作正常仍然没有意义 .