0

我的主机(site5)目前只提供 ruby​​ 1.8.7,但他们很快就会改变这一点。所以我正在为 ruby​​ 1.9.2 和 2.0 准备我的 rails 应用程序。出于测试目的,我需要在不同的 ruby​​ 版本之间切换(为此我使用 rvm 和 gemsets)。

在 ruby​​ 1.8.7 我需要 gem sqlite3-ruby -v 1.2.5 但在 ruby​​ 1.9.2 我需要 gem sqlite3 -v 1.3.8 (因为多字节字符问题)我不能使用更高sqlite3-ruby 与 ruby​​ 1.8.7 因为它在生产中不起作用(目前)

有没有一种简单的方法可以在两组不同的 Gemfiles/Gemfile.lock 文件之间进行切换?或者让 Gemfile/Gemfile.lock 以正在使用的 ruby​​ 版本为条件?

4

1 回答 1

0

您可以为 gem 设置平台http://bundler.io/v1.3/man/gemfile.5.html

gem "sqlite3-ruby", :version => "1.2.5", :platforms => :mri_18
gem "sqlite3-ruby", :version => "1.3.8", :platforms => [:mri_19, :mri_20]
于 2013-09-26T11:02:28.763 回答