2013-04-29 89 views
8

我安裝了Rails 4.0.0.beta1,但我需要降級到Rails 3.2.13。我使用gem install rails 3.2但Rails繼續4.0.0.beta1。降級導軌4到3.2

我搜索了現有的疑惑,並嘗試按照答案,但沒有爲我工作。

認爲這是一個簡單的疑問,我需要解決。


這個回答我的問題:How to set default rails version for a project?

+1

嘗試在Gemfile中更改您的gem,然後運行'bundle install'。 – sscirrus 2013-04-29 04:48:41

+0

你看這裏:http://stackoverflow.com/questions/16122781/how-can-i-remove-ruby-on-rails-4-beta?問題可能是重複的。 – 2013-04-29 04:50:02

+0

你可以在你的gemfile文件中添加軌道嗎? – John 2013-04-29 05:15:08

回答

0

嘗試在控制檯下面。它會更新或安裝軌道到指定的版本。

gem update rails 3.2.13 
0

除非您使用bundle exec,否則Rubygems將始終使用最新安裝版本的gem。你需要卸載你不想要的版本。

gem uninstall rails --version 4.0.0.beta1 
+0

這個工程,但是當我運行'rails -v'時Rails 4.0.0.beta1堅持出現。我試圖包括卸載所有版本,並在運行後'gem install rails -v = 3.2.13'也顯示成功的消息,但表示Rails 4.0.0.beta1已安裝 – kinguerra 2013-04-29 05:32:11

+1

這很奇怪,因爲在此過程之後,當我嘗試卸載它只顯示我的版本3.2.13 ... – kinguerra 2013-04-29 05:45:17

+0

使用捆綁器可能是理智之路。 :) – davogones 2013-04-29 09:19:01

0

gem uninstall rails --version xxx的回答應該刪除rails gem就好了。

但是,如果您希望或需要同時使用多個版本的rails,則可以使用bundler加載正確版本的gem(按預期)。

$ bundle exec rails在列出Gemfile中導軌版本的項目目錄中應該讓您加載所需的gem而不會發生衝突。

此外,RVM和寶石功能也可以讓你完成相同的目標,而無需換用bundle exec

0

Rails的一切都將使用Gemfile指定的版本:

gem "rails", "4.0.0.beta1" 

將其替換您想使用的版本:

gem "rails", "~> 3.2.0" 

當然,您還需要更改您的鱈魚e和配置使用舊的Rails API。

8

問題與列出的here相同。

這是什麼爲我工作,也應該爲你。這是一個更通用的解決方案,無論您的特定版本的Rails測試版如何,它都可以工作。請注意,爲了回到3.2.13(或者你想回到的任何版本),你必須刪除Railties以及Rails。

只要做到:

gem uninstall rails

然後,選擇你有軌道4的版本並刪除它。

然後執行:

gem uninstall railties

,做同樣的事情。

當我卸載Rails 4版本的railties時,它告訴我幾個gem(coffee-rails和sass-rails)的依賴不會被滿足。因此,我只是對它們做了和上面一樣的事情,並刪除了它們的Rails 4版本(例如,對於sass-rails,我安裝了一個名爲sass-rails-4.0.0.rc1的版本)。

完成!終端應該列出3.2.13作爲你當前的Rails版本。

0

我與Rails 4.0.0最終版本有同樣的問題。要檢查當前安裝的是什麼,可以運行以下命令:

>pik gem list 

然後我檢查了rails版本。它顯示rails 3.2.14(我想要的)與railties 4.0.0,4.0.0.rc2和3.2.14。

我然後跑

>gem uninstall railties 

和卸載所有其他版本3.2.14之外,現在它工作得很好。問題是,當Rails 3.2安裝被調用時,最新(或所有)railties版本被安裝。

如果你有軌的其他版本的其他曬得你想要的,你可以用

>gem uninstall rails 

刪除它們,並刪除你不希望有軌的版本。