Git push heroku master: отклонение Heroku отклонено, приложение, поддерживающее кедр, не обнаружено
Я попытался запустить:
$ git push heroku master
-----
Total 7121 (delta 2300), reused 6879 (delta 2228)
! Heroku push rejected, no Cedar-supported app detected
To [email protected]:fierce-atoll-4127.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to '[email protected]:fierce-atoll-4127.git'
Единственные возможные ответы, которые я нашел, показали, что если у вас есть знак подчеркивания в имени вашего приложения, это может вызвать эту проблему. У меня был "-", и я удалил его, но я все еще не могу получить эту работу.
Ниже в моем файле требований .txt, который находится под моей папкой src, наряду с параметрами settings.py и manage.py.
Django==1.4.3
South==0.7.6
distribute==0.6.31
ipython==0.13.1
wsgiref==0.1.2
dj-database-url==0.2.0
Ответы
Ответ 1
Просто эта проблема тоже. Я решил сделать следующее: (предполагая, что вы находитесь в проекте dir)
rm -rf .git
git init
git add .
git commit -m "First commit"
heroku create --stack cedar
git push heroku master
Немного задействованное решение для создания нового приложения, но, по крайней мере, оно работает. Надеюсь, что это поможет!
Ответ 2
Вероятно, вам нужно добавить файл requirements.txt
. проверьте документы python app docs
Ответ 3
У меня была аналогичная проблема, и в моем случае это было потому, что мои приложения были вне моей папки проекта. Heroku рассчитывает иметь такую структуру:
Procfile
requirements.txt
static/
myproject/
manage.py
app1/
app2/
..
Ответ 4
rm -rf .git
git init
git add .
git commit -m "First commit"
heroku create --stack cedar
git push heroku master
Это сработало и для меня!
Ответ 5
Так как Django является приложением python, вам нужно иметь requirements.txt
и setup.py
сидеть в корне вашего репо, а не подкаталоге src. См. https://github.com/heroku/heroku-buildpack-python/blob/master/bin/detect
Ответ 6
Моя глупая ошибка заключалась в неправильном использовании requirements.txt
как ошибочного requirments.txt
. Мне не нужно setup.py
.
Кроме того, мне нужно фактически хранить репозиторий git в Github. Просто создать его локально было недостаточно.
Ответ 7
Для всех, удаляющих свою историю Git, чтобы сделать эту работу... единственная причина, по которой это работает, заключается в том, что первоначальная фиксация в новом репозитории содержит необходимые файлы для Heroku для распознавания вашего приложения.
Я столкнулся с этой проблемой, потому что я добавил Procfile
и requirements.txt
для своего приложения и попытался нажать на Heroku, прежде чем на самом деле их совершить. Поэтому, когда я нажал на Heroku, я не толкал эти файлы!
Выполнение фиксации со всеми необходимыми файлами, а затем нажатие должно решить эту проблему и значительно предпочтительнее удалить всю историю Git.
Надеюсь, это поможет!
Ответ 8
Я долгое время боролся с этой проблемой, и единственным решением было Vincent van Leeuwen, но я не понимал, почему. Проблема оказалась в том, что я работал из локальной ветки, кроме мастера. Поэтому, когда я запускал
git push heroku master
Я действительно нажал
(local) master->(heroku) master
а не
(local) current_branch -> (heroku) master
как я и предполагал. Это не удалось, потому что у моей локальной ветки мастера не было требований. Txt, Procfile и т.д.
Решение:
git push heroku current_branch:master
Подробнее см. heroku docs.
Надеюсь, что это поможет.
Ответ 9
Heroku нуждается в файле requirements.txt, который помогает Heroku знать, какие зависимости нужно установить для вашего проекта Django. Вы можете использовать инструмент, генерирующий файл requirements.txt.
Запуск в командной строке
pip freeze > requirements.txt
который создаст файл requirements.txt со всеми вашими установленными пакетами, такими как Django, django-registration и т.д.
Эта ссылка может быть полезна: http://tutorial.djangogirls.org/deploy/README.html
Ответ 10
Моя ситуация заключается в том, что мои коды необходимы для сохранения как в Github, так и в Heroku, если я использую следующее решение, rm -rf .git
удалит соединение с моим Github, поэтому я не могу нажать на мои коды в Github.
rm -rf .git
git init
git add .
git commit -m "First commit"
heroku create --stack cedar-14
git push heroku master
Вместо этого мое решение выглядит следующим образом:
$ heroku create
$ heroku config:add BUILDPACK_URL=git://github.com/heroku/heroku-buildpack-python.git
$ git push heroku master
Ответ 11
Вам нужно добавить файл requirements.txt в git, а затем нажать его, чтобы убедиться в этом.