2012-03-31 3 views
10

Я клонировал один из моих собственных приложений с использованием Rails 3.1.3, создал приложение на Heroku на стек кедре, подтолкнул к Heroku, а затем попытался запуститьHeroku: Нет Rakefile найдено (но работает локально)

heroku run rake db:migrate и получил сообщение об ошибке

No Rakefile found (looking for: rakefile, Rakefile, rakefile.rb, Rakefile.rb) 
/usr/local/lib/ruby/1.9.1/rake.rb:2367:in `raw_load_rakefile' 
/usr/local/lib/ruby/1.9.1/rake.rb:2007:in `block in load_rakefile' 
/usr/local/lib/ruby/1.9.1/rake.rb:2058:in `standard_exception_handling' 
/usr/local/lib/ruby/1.9.1/rake.rb:2006:in `load_rakefile' 
/usr/local/lib/ruby/1.9.1/rake.rb:1991:in `run' 
/usr/local/bin/rake:31:in `<main> 

Я в корне приложения при запуске rake db:migrate. Приложение работает на localhost.

Любые идеи, что я могу делать неправильно?

Единственное, я отмечаю, что кажется странным, что, в сообщение об ошибке, это имеет в виду ruby/1.9.1/

Однако, я создал приложение с помощью RVM с рубином 1.9.2, и когда я ruby -v

ruby -v 
ruby 1.9.2p290 (2011-07-09 revision 32553) [x86_64-darwin10.8.0] 

Мои Gemfile

source 'http://rubygems.org' 

gem 'rails', '3.1.3' 

# Bundle edge Rails instead: 
# gem 'rails',  :git => 'git://github.com/rails/rails.git' 

group :development, :test do 
    gem 'sqlite3' 
end 
group :production do 
    gem 'pg' 
end 

group :production do 
    gem 'thin' 
end 

gem "heroku" 

gem 'omniauth-facebook' 
gem 'omniauth' 

# Gems used only for assets and not required 
# in production environments by default. 
group :assets do 
    gem 'sass-rails', '~> 3.1.5' 
    gem 'coffee-rails', '~> 3.1.1' 
    gem 'uglifier', '>= 1.0.3' 
end 

gem "rmagick" 
gem "carrierwave" 
gem 'fog' 
gem 'simple_form' 

gem 'devise' 

gem 'jquery-rails' 

# To use ActiveModel has_secure_password 
# gem 'bcrypt-ruby', '~> 3.0.0' 

# Use unicorn as the web server 
# gem 'unicorn' 

# Deploy with Capistrano 
# gem 'capistrano' 

# To use debugger 
# gem 'ruby-debug19', :require => 'ruby-debug' 

group :test do 
    # Pretty printed test output 
    gem 'turn', '0.8.2', :require => false 
end 

мой gitignore файл

# See http://help.github.com/ignore-files/ for more about ignoring files. 
# 
# If you find yourself ignoring temporary files generated by your text editor 
# or operating system, you probably want to add a global ignore instead: 
# git config --global core.excludesfile ~/.gitignore_global 

# Ignore bundler config 
/.bundle 

# Ignore the default SQLite database. 
/db/*.sqlite3 

# Ignore all logfiles and tempfiles. 
/log/*.log 
/tmp 
+0

Это нормально, что каталог назван 1.9.1. Есть ли вероятность, что Rakefile не будет проверен в вашем репозитории? Может быть, исключено вручную? – iltempo

+0

Я отправил копию моего файла gitignore в OP. и я могу открыть файл рейка из моего каталога приложений. Тем не менее, я не знаю, как проверить, был ли файл рейка нажат на герою. ты знаешь? – Leahcim

+0

bash в dyno и посмотреть: 'heroku run bash' ' cd/app/' –

ответ

28

Вы должны нажать на главную ветку. От взгляда на комментарии выше, похоже, что вы этого не делаете.

Поэтому, предполагая, что вы разрабатываете приложения в основной ветке можно развернуть с помощью простого:

git push heroku master 

Если вы не развивается на мастер развертывания с:

git push heroku your_branch_name:master 

заменив your_branch_name именем используемой ветви.

Смежные вопросы