0

私は自分のGemfileに持っています

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

これはうまくいきます。bundle update を実行すると、「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 に上位バージョンの railties が必要な理由がわかりません。それは私には奇妙に思えます。実際、それは嘘です!

別のプロジェクト(Rails Tutorial sample_app)で私は持っています

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

railties (4.0.0) のみですが、バンドルの更新は正常に機能します。したがって、上記のエラーは問題ではないようです。じゃあ何だかわからない!?

ここで詳細情報を見つけました-バンドルの更新を許可するgemfileを取得できません(gemfileでレールとsass-railsの順序を切り替えると、4.0.0が正常に動作します)。しかし、私の Gemfile が 1 つのプロジェクトで正常に動作し、同じ sass-rails と rails gem と同じ railties を使用する別のプロジェクトでは動作しない理由はまだわかりません。

4

0 に答える 0