无法在克隆的github存储库上运行'rake db:migrate'

时间:2011-10-18 15:47:56

标签: ruby-on-rails github rake clone dbmigrate

由于我是rails的新手并从书本中学到了很多基础知识,我现在认为我可以通过阅读其他人的代码并尝试理解它来学到更多知识,所以我已经在github上注册并设置了那里的一切。现在我读到一个很好的开源项目可以学习,所以我去了https://github.com/radiant/radiant并将其克隆到本地目录。我进行如下:

  1. cd radiant
  2. bundle install,一切顺利
  3. rake db:migrate,首先返回:
  4.   耙子流产了!你已经激活了rake 0.9.2,但你的Gemfile需要rake 0.8.7。使用bundle exec可以解决

    所以我输入bundle exec rake db:migrate并收到以下内容:

      

    注意:不推荐使用Gem.source_index,请使用规范。它将在2011-11-01之后或之后删除。从c:/Ruby192/lib/ruby/gems/1.9.1/gems/rails-2.3.14/lib/rails/gem_dependency调用Gem.source_index Rake中止了!没有这样的文件要加载 - 半径

    所以在这里我想知道如何解决这个问题?我还注意到,在克隆时,gendfile和Gemfile.lock已经存在于radiant文件夹中,这可能是问题的一部分?

    此外,我想知道在编写项目的同时运行相同版本的rails是不是很重要?

    现在应该说我目前已安装rails 3.0.5并在Windows上运行

    我希望有人可以在这里帮助我,因为我无法运行任何克隆的github repos(这里只是一个例子),所以非常令人沮丧。

2 个答案:

答案 0 :(得分:0)

您应该修改Gemfile并使其需要更新的佣金。 您还可以运行rake db:migrate --trace以获取其他错误信息。

答案 1 :(得分:0)

弃用警告仍然只是一个警告,它不应该导致任何问题。相关错误的一部分是No such file to load -- radius。您可能需要按照安装Radiant的说明进行操作,其中包括在将项目代码放到某处之前运行gem install radiant

Bundler管理在Gemfile中安装和使用gems,如果存在Gemfile.lock,它将使用这些确切的版本。这意味着你无法运行Radiant with Rails 3.0.5,因为Gemfile指定了2.3.14。但是Bundler会自动安装Rails 2.3.14及其依赖项,所以你不必担心它。

顺便说一下,这个项目看起来很糟糕。 Rails项目/ gem强制你实际克隆它以使用它并不常见。如果你想查看一个Rails 3项目来学习,我有一个很小的Rails 3应用程序,打算在Github上公开使用一些非常简洁的代码:http://github.com/coreyward/instavibe