Ответ 1
Когда вы создали приложение Rails, вы сменили каталог в каталоге приложения? Вы должны выполнить все команды из каталога приложения.
rails myapp
cd myapp
Я пытаюсь нажать приложение rails на heroku.
Когда я дойду до последнего шага:
git push heroku master
Это не работает и дает мне следующие ошибки:
Counting objects: 85, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (74/74), done.
Writing objects: 100% (85/85), 24.38 KiB, done.
Total 85 (delta 23), reused 0 (delta 0)
-----> Heroku receiving push
! Heroku push rejected, no Rails or Rack app detected.
error: hooks/pre-receive exited with error code 1
To [email protected]:smooth-dusk-26.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to '[email protected]:smooth-dusk-26.git'
Я не знаю, что я делаю неправильно: (
Когда вы создали приложение Rails, вы сменили каталог в каталоге приложения? Вы должны выполнить все команды из каталога приложения.
rails myapp
cd myapp
Вот ответ, который я получил от Heroku, и это сработало для меня (после того, как вы попробовали разные pg gems, адаптеры и все остальное на 10 других сообщениях об этом)
1) добавьте строку: gem 'pg' к вашему Gemfile.
2) Запустите команду bundle install
, чтобы установить драгоценный камень в ваш комплект.
3) Смените параметры Gemfile и Gemfile.lock: git добавить Gemfile Gemfile.lock
4) Зафиксируйте изменения: git commit -m "Установить pg gem"
5) Переустановить на герою: git push heroku master
Я столкнулся с теми же ошибками, что и в главе 1 Майкла Хартла Rails Tutorial. Они были в конечном итоге решены путем выпуска другой команды git commit после открытия учетной записи Heroku и настройки ключей SSH: git commit -a -m "Heroku revit"
git нажмите мастер героя, затем преуспел.
У меня была одна и та же проблема, пытаясь нажать мое приложение на герою, и ни один из вышеперечисленных ответов не зафиксировал его.
Я решил проблему, опуская мой RVM Gemset с помощью rvm gemset empty
, удалив мой Gemfile.lock(возможно, лучше всего переименовать его) и переустановить мои драгоценные камни. После этого нажатие прекратилось.
Для меня было установлено, что index.php зафиксировал это. Heroku, похоже, проверяет наличие index.php на pre-commit.
Аналогичная проблема возникает при использовании окон под одним из руководств на сайте ror. После создания всего, как здесь http://devcenter.heroku.com/articles/quickstart, он был решен.
Кажется, проблема была из-за отсутствия двух строк.
cd myapp
git init
Кроме того, если вы используете Rails 3.0, убедитесь, что вы используете кедровый стек
heroku create --stack cedar
Я прошел учебник Rails и не имел проблемы с Heroku (MAC OS X), но вам нужно следовать указаниям.
Во-первых, убедитесь, что вы добавили/зафиксировали на Git. Затем, если вы находитесь в -b (ветке), вам нужно проверить в master, а затем слить ветку. Если вы вносили изменения в активы, вам нужно разбить актив: прекомпилировать.
Если у вас возникла проблема с загрузкой, убедитесь, что у вас есть этот файл = > config.ru, и содержимое должно выглядеть так.
# This file is used by Rack-based servers to start the application.
require ::File.expand_path('../config/environment', __FILE__)
run SampleApp::Application
Я относительно новичок в Rails и Heroku, но, как я уже упоминал выше, если вы следуете инструкциям руководства, Heroku - это хватка, и направления, которые определенно работают. Если нет, я настоятельно рекомендую начать работу там!