Ruby on rails 升级rails应用程序的简单方法是什么?

Ruby on rails 升级rails应用程序的简单方法是什么?,ruby-on-rails,ruby,version,upgrade,Ruby On Rails,Ruby,Version,Upgrade,我正在从事一个非常古老的rails项目。该文件如下所示: source 'http://rubygems.org' gem 'rails', '2.3.17' gem 'rake', '0.8.7' gem 'rdoc', '3.6.1' gem 'mysql', '2.8.1' gem 'roo', '1.9.7' gem 'rubyzip', '0.9.4' gem 'pdf-writer', '1.1.8' gem 'prawn', '0.12.0' gem 'sendmail

我正在从事一个非常古老的rails项目。该文件如下所示:

source 'http://rubygems.org'

gem 'rails', '2.3.17'

gem 'rake', '0.8.7'
gem 'rdoc', '3.6.1'

gem 'mysql', '2.8.1'

gem 'roo', '1.9.7'
gem 'rubyzip', '0.9.4'
gem 'pdf-writer', '1.1.8'

gem 'prawn', '0.12.0'

gem 'sendmail'

gem 'htmldoc', '0.2.3'
ruby版本是1.8.7


升级此rails应用程序的简单方法是什么?我是否可以将每个gem的版本更改为最新版本,并期望它可以正常工作

没有简单的方法。在开始升级之前,必须添加测试,以确保应用程序在升级后仍能工作。 然后,我建议将gem描述更改为以下语法:
gem'mysql','~>2.8.1'
它告诉bundler只更新gem的最后一个版本

然后重复以下步骤

  • 将rails版本更改为下一版本
  • 捆绑更新rails
  • 手工更正了有冲突的gem版本
  • 包更新

不,你显然不能。更重要的是,由于自
2.3.17
以来许多接口都发生了更改,因此几乎所有操作都需要手动干预。我建议一步一步地(2.3⇒ 3.2⇒ 4.1⇒ Rails 2.3到5.x和Ruby 1.8到2.x?如果项目很小,你应该考虑从头开始重建它。除了@ MuasasbWaW所说的,开始用测试覆盖你当前的应用程序。一旦达到最大覆盖率,就可以开始更改版本。版本更改和手动干预通常会破坏东西,您需要事先知道需要修复的内容。提示:使用Simplecov gem检查覆盖范围。