Rails 3.2: нажатие Heroku отклонено, приложение, поддерживающее Cedar, не обнаружено

Rails новичок здесь. Я пытаюсь развернуть приложение Rails 3.1/Ruby 1.9.3-p0 в Heroku и выполнил все шаги в соответствии с Heroku. Но я продолжаю сталкиваться:

Отказ Heroku отклонен, не обнаружено приложение, поддерживающее Cedar

Я пробовал все предложения в этом вопросе, но пока не увенчался успехом.

Ответ 1

Я столкнулся с подобным отказом. Что для меня работало, это повторная инициализация файла .git.

Попробуйте в командной строке:

rm -rf .git
git init
git add .
git commit -am "Reinitialize"
heroku create --stack cedar
git push heroku master

Ответ 2

Я только что решил эту проблему с одним из моих приложений. Если вы проверите документацию , Cedar Stack ищет Gemfile в корневом каталоге . В моем случае корневой каталог имел только папку, содержащую мое приложение, с Gemfile внутри.

Итак, вам нужно выполнить инициализацию нового репозитория git внутри этой папки и добавить пульт:

$ cd my_app_folder
$ git init
$ git add .
$ git commit -m "Heroku commit"
$ git remote add heroku [email protected]:my-app-in-heroku.git
$ git push heroku master

И все готово!

Ответ 3

Всякий раз, когда я сталкиваюсь с этой ошибкой, я проверяю следующие две вещи:

  • Убедитесь, что Gemfile существует в корневом каталоге приложения Rails. Heroku использует его для определения типа развертывания приложения.
  • Убедитесь, что сам Rails-приложение корневой каталог находится под управлением версии (например: Git), а не его родительским каталогом.

Если вы случайно поставили родительский каталог вашего приложения rails в управление версиями. Удалите каталог .git внутри этого родительского каталога и инициализируйте новый репозиторий, но на этот раз в каталоге приложения Rails.

Ответ 4

Попробуйте

$ git init
$ git add .
$ git commit -m "Change to something"

Затем запустите

git push heroku master

Ответ 5

Я столкнулся с этой проблемой несколько раз раньше, и это было потому, что я пытался оттолкнуть удаленную ветвь к герою.

Чтобы решить проблему, вместо использования:

git push heroku master

Я использовал:

git push heroku my-branch:master

Это подталкивает удаленную ветвь my-branch в репозиторий git к ветке master героя.

Ответ 6

У меня та же проблема. Моя файловая структура не была тем, что ожидалось герою (.git должен быть на том же уровне, что и Gemfile). Я удалил папку Rails_Code, и она сработала.

Project\
         .git
         Rails_Code\
                     Gemfile
                     etc...

Ответ 7

Такая же ситуация, как @petwo, выше сказано

"Убедитесь, что Gemfile существует в корневом каталоге приложения Rails. Heroku использует его для определения того, какой тип приложения нужно развернуть".

В моем случае, как-то меня игнорировали мои Gemfiles и Gemfile.lock. Когда я проверил github, Gemfile не был вытолкнут с моим приложением из-за того, что .gitignore игнорировал мои gemfiles.

После удаления моих gemfiles из gitignore я нажал на герою, и все получилось гладко