我的计算机中安装了两个版本的rails(2.1.0和2.2.2).
当我创建一个新的应用程序时,是否可以指定我想使用旧的(2.1.0)版本?
我在这里找到了一个未记录的选项来使用旧版本的Rails创建一个新的应用程序.
rails _2.1.0_ new myapp
这是我正常使用的命令:
rails _version_ new application_name
例如 rails _2.1.0_ new my_app
以下是目前所有可用轨道版本的列表:
http://rubygems.org/gems/rails/versions
我在使用时遇到了一些麻烦rails _version_ new application_name
(最终版本的Rails安装后仍会生成结果项目.)
有点挖后,我发现了一篇文章由迈克尔Trojanek用另一种方法.这可以通过创建一个带有Gemfile的文件夹来指定所需的Rails版本然后使用,bundle exec rails...
以便Bundler负责运行相应的版本rails
.例如,要创建一个新的Rails 4.2.9项目,步骤是:
mkdir myapp cd myapp echo "source 'https://rubygems.org'" > Gemfile echo "gem 'rails', '4.2.9'" >> Gemfile bundle install bundle exec rails new . --force --skip-bundle bundle update
正如@mikej对于Rails 5.0.0或更高版本所正确指出的那样,您应该遵循以下步骤:
为您的应用程序创建一个目录以及一个Gemfile,以指定所需的Rails版本,然后让bundler安装相关的gems:
$ mkdir myapp $ cd myapp $ echo "source 'https://rubygems.org'" > Gemfile $ echo "gem 'rails', '5.0.0.1'" >> Gemfile $ bundle install
检查是否已安装正确版本的rails: $ bundle exec rails -v
现在创建您的应用程序,让Rails创建一个新的Gemfile(或者通过使用该--force
标志覆盖现有的Gemfile ),而不是安装bundle(--skip-bundle
)手动对其进行更新:
$ bundle exec rails new . --force --skip-bundle
如果您在中检查rails条目Gemfile
,则应为:
gem 'rails', '~> 5.0.0', '>= 5.0.0.1'
您应该将其更新为应用程序所需的确切版本:
gem 'rails', '5.0.0.1'
现在,最后一步:
$ bundle update