Ich versuche ein Upgrade auf Rails 4.0.0, und ich habe die Gem-Versionen von sass-Rails
Und coffee-Rails
Geändert. Ich muss diesen Gem-Konflikt zwischen Rails
und coffee-Rails
, Bevor ich auf Rails 4 aktualisieren kann.
Wenn ich bundle update
Ausgeführt habe, ist dies die Ausgabe, die ich erhalten habe:
$ bundle update
Updating git://github.com/pilu/web-app-theme.git
Fetching source index from https://rubygems.org/
Resolving dependencies..............
Bundler could not find compatible versions for gem "railties":
In Gemfile:
Rails (= 4.0.0) Ruby depends on
railties (= 4.0.0) Ruby
coffee-Rails (= 4.0.0) Ruby depends on
railties (4.0.0.rc2)
Meine Gemfile
:
source 'https://rubygems.org'
gem 'Rails', '4.0.0'
gem 'cancan'
gem 'client_side_validations'
gem 'devise', '~> 1.5.3'
gem 'dynamic_form'
gem 'execjs'
gem 'haml'
gem 'httparty'
gem 'jquery-Rails'
gem 'mysql2'
gem 'Paperclip', '~> 2.4'
gem 'prawn'
gem 'Rails3-jquery-autocomplete'
gem 'rake', '0.9.2'
gem 'remotipart', '~> 1.0'
gem 'simple_datatables'
gem 'therubyracer'
gem 'validates_timeliness', '~> 3.0.2'
gem 'will_paginate', '~> 3.0'
gem 'turbolinks'
gem 'jquery-turbolinks'
gem 'noty-Rails'
gem 'font-awesome-Rails'
gem 'socket.io-Rails'
gem 'attr_encrypted'
gem 'bullet', :group => 'development'
#temp for demo.managetherapy.com
#gem 'faker'
group :test do
gem 'capybara'
gem 'cucumber-Rails', :require => false
gem 'database_cleaner'
gem 'factory_girl_Rails'
# gem 'faker'
gem 'guard-rspec'
gem 'Selenium-webdriver', '2.7.0'
gem 'webrat'
end
group :development, :test do
gem 'faker'
gem 'haml-Rails'
gem 'hpricot'
gem 'rspec-Rails'
gem 'Ruby_parser'
#gem 'web-app-theme', '~> 0.8.0'
gem 'web-app-theme', :git =>'git://github.com/pilu/web-app-theme.git'
end
gem 'sass-Rails', '4.0.0'
gem 'compass-Rails', '1.0.3'
gem 'coffee-Rails', '4.0.0'
gem 'uglifier', '>= 2.1.1'
gem 'bootstrap-sass-Rails'
# Use Unicorn as the web server
#gem 'Unicorn'
# Deploy with Capistrano
gem 'capistrano'
gem 'rvm-capistrano'
gem 'passenger'
Außerdem können Sie mit bundle update
Nur einen Edelstein gleichzeitig aktualisieren. Dies ist schwierig, wenn Sie auf Rails 4
Aktualisieren und eine ganze Reihe von Edelsteinen gleichzeitig aktualisiert werden müssen.
Ich habe dieses Problem gelöst, indem ich Gemfile.lock
Gelöscht und bundle install
Ausgeführt habe.
Dies setzt natürlich voraus, dass Sie in Ihrem Gemfile
zunächst keine widersprüchliche explizite Edelsteinversion haben. Wenn dies fehlschlägt, entfernen Sie die Versionsnummern aus dem Gemfile.
Entfernen Sie einfach Gem-Versionen (Coffee-Rails und Sass-Rails) aus Gemfile und führen Sie Bundle-Update aus
Du hast eine veraltete Version von Devise, benutze Rails 4 kompatibel
gem 'devise', '~> 3.0.0.rc'
Ändere auch coffee-Rails
bis
gem 'coffee-Rails', '~> 4.0.0'
und versuche es
bundle update coffee-Rails
Lauf gem update Rails
Zuerst, dann bundle update
Sie haben Edelsteine, die nicht von Rails 4 unterstützt werden. Kommentieren Sie alle Edelsteine mit Ausnahme von Rails 4 aus und kommentieren Sie sie nach der Bundle-Installation einzeln aus Möglicherweise müssen Sie einige Ihrer Versionssperren aufheben, um die Schuldigen zu finden.
Gemfile.lock
Dateibundle install
Alles wird gut funktionieren. :)