指定创build新应用程序时使用的rails版本
我的电脑中安装了两个版本的rails(2.1.0和2.2.2)。
当我创build一个新的应用程序,是否可以指定我想使用旧的(2.1.0)版本?
我在这里find一个未公开的选项来使用旧版本的Rails创build一个新的应用程序。
rails _2.1.0_ new myapp
这是我通常使用的命令:
rails _version_ new application_name
例如rails _2.1.0_ new my_app
以下是目前所有可用的rails版本列表:
我在使用rails _version_ new application_name
时遇到了一些麻烦(生成的项目仍然是为安装的最新版本的Rails生成的。)
经过一番挖掘,我find了 Michael Trojanek用另一种方法写 的一篇文章 。 这可以通过创build一个文件夹来指定所需的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
您可以使用任一版本生成骨架,并在config/environment.rb
需要您想要的骨架:
# Specifies gem version of Rails to use when vendor/rails is not present RAILS_GEM_VERSION = '2.1.2' unless defined? RAILS_GEM_VERSION
或者使用你想要的版本的“rails”命令。
你也应该看看“冻结”你的Rails的gem进入应用程序。 这对部署有很大帮助,特别是在共享主机环境中。
只需更改config/environment.rb
的RAILS_GEM_VERSION
variables并发出冻结耙任务:
rake rails:freeze:gems