2011-10-18 34 views
0

由於我剛剛接觸rails並且從書中學到了非常基礎知識,我現在認爲,通過閱讀其他人的代碼並嘗試使其可以學習更多,感覺它,所以我已經在github註冊並設置了所有內容。現在我讀了一個很好的開源項目,學習起來很容易,所以我去了https://github.com/radiant/radiant,並將其克隆到本地目錄。我接着如下:無法在克隆的github庫上運行'rake db:migrate'

  1. cd radiant
  2. bundle install,其中又以精
  3. rake db:migrate,其中第一回:

耙中止!你已經激活了rake 0.9.2,但你的Gemfile需要rake 0.8.7。使用捆綁高管5月溶膠

所以我輸入bundle exec rake db:migrate並收到以下內容:

注:Gem.source_index已過時,使用規範。它將在2011年11月1日或之後刪除。 Gem.source_index從c:/Ruby192/lib/ruby/gems/1.9.1/gems/rails-2.3.14/lib/rails/gem_dependency調用Rake中止!沒有這樣的文件加載 - 半徑

所以,我想知道如何解決這個問題?我還注意到,當它被克隆時,Gemfile和Gemfile.lock已經存在於輻射文件夾中,這可能是問題的一部分?

另外我想知道是否是運行相同版本的rails作爲項目寫入的關鍵嗎?

現在應該說我現在有導軌安裝3.0.5和Windows

我希望有人能幫助我在這裏,這已經相當令人沮喪,因爲我一直無法運行任何克隆github上運行回購(這裏的輻射只是一個例子)。

+0

編輯你的Gemfile。運行「軟件包安裝」後嘗試「軟件包更新」。 –

回答

0

您應該編輯您的Gemfile並使其需要更新的耙子。 也可以運行rake db:migrate --trace以獲取其他錯誤信息。

+0

@Jason如果您不知道 – ardavis

0

棄用警告仍然只是一個警告,它不應該引起任何問題。該錯誤的相關部分是No such file to load -- radius。您可能需要按照說明安裝Radiant,其中包括在放棄此項目代碼之前運行gem install radiant

Bundler管理在你的Gemfile中安裝和使用gem,如果存在Gemfile.lock,它將使用這些確切的版本。這意味着你不能使用Rails 3.0.5來運行Radiant,因爲Gemfile指定了2.3.14。 Bundler會自動安裝Rails 2.3.14及其依賴項,所以你不需要擔心。

順便說一句,這個項目看起來很不妥善。 Rails項目/ gem迫使你實際克隆它來使用它並不常見。如果你想看看一個Rails 3項目來學習,我有一個纖細的Rails 3應用程序,旨在在Github上公開地使用一些非常乾淨的代碼公開API:http://github.com/coreyward/instavibe

+0

感謝您抽出時間爲我澄清,那麼更新的耙子是'0.9.2'!我肯定會檢查你的應用程序。當你說「Rails項目/創業板不常用於強迫你實際克隆它來使用它」時,常用的方法是什麼?我的意思是我不需要fork/clone你的應用程序來使用它? (我覺得這可能是一個有點愚蠢的問題,但我希望你能得到我的真誠學習) –

+0

在Ruby中沒有第三方代碼被共享(供使用,不用於開發)的方式是通過Gems。它不是絕對的,但對於大多數情況來說寶石是有意義的。然後你可以通過'gem install [name]'來安裝它們,然後運行'require'rubygems'來包含它們。在你的Ruby中需要'name'。 Rails本身就是一個寶石,甚至。 ;) – coreyward