当我运行 git push heroku master
时,这就是我得到的:
C:UsersEmanuele-PCDesktopproject-mm-beta>git push heroku master
Counting objects: 3, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 505 bytes | 0 bytes/s, done.
Total 3 (delta 0), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> App not compatible with buildpack: https://codon-buildpacks.s3.amazonaws.com/buildpacks/heroku/python.tgz
remote: More info: https://devcenter.heroku.com/articles/buildpacks#detection-failure
remote:
remote: ! Push failed
remote: Verifying deploy...
remote:
remote: ! Push rejected to project-mm-beta.
remote:
To https://git.heroku.com/project-mm-beta.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/project-mm-beta.git'
我试图部署的代码只是一个文件(这是一个测试,因为这是我第一次使用Heroku),它用Python编写。我已经设置了BuildPack(Python),但仍然不起作用。我该如何解决?
仅在root目录中的应用程序具有Pipfile
,setup.py
或requirements.txt
时,Heroku Python支持才能应用于应用程序。
访问文档以获取详细说明。
我刚刚发现...这是一个非常愚蠢的问题。确保在项目根文件夹中初始化GIT存储库。假设该项目是一个django应用程序,而Django创建的项目文件夹是my-project
,需要在my-project
中初始化GIT回购才能工作...
添加Pipfile
和Procfile
,以及提交它们。这为我解决了。
您可以在此Heroku文档上看到我所说的文件。
这是Github上Heroku的Python buildpack的链接。
您可以尝试做:
-
pip3 freeze > requirements.txt
-
heroku buildpacks:set heroku/python
-
git add .; git commit -m "add requirements.txt"; git push heroku master
注意:确保您处于Python Project的根目录中:)
尝试添加一个名为regient.txt的文件并输入您需要的任何内容
步骤1)首先设置buildpack(编程语言)
例如: heroku buildpacks:set heroku/nodejs
在此处查看更多信息: https://devcenter.heroku.com/articles/buildpacks
如果问题仍然存在,请遵循下一步
步骤2)git Init和当前使用的目录是 不同的,因此此错误仍然被抛出"应用程序与buildpack不兼容:"
例如: git init
使用命令执行: - c:/sample_folder/
但模块和软件包。 c:/sample_folder/nodejs_app/package.json 因此,相应地移动文件,以使所有文件均为在同一文件夹下> 然后运行 - 快乐编码!git push heroku master
我遇到了这个错误,因为我正在更改另一个分支。因此,我正在工作一个功能分支,然后运行git push heroku master
。我的更改尚未合并到我的主分支中,因此错误。一旦我合并为掌握掌握,我就能将更改推向Heroku。
我遇到了相同的错误文件,请确保在更改任何文件后运行命令git add .
,然后git commit -m'message'
,然后可以正确添加run git push heroku master
,还可以正确添加requirements.txt
和Procfile
。
strong>第一个文件: requirements.txt
包含以下内容:gunicorn==19.7.1
或pip freeze > requirements.txt
的任何结果。
第二个文件: Procfile
包含以下内容:web: gunicorn app:app
或可能为空白。请注意,在此示例中,app:app
是对您的Python文件名的引用。这意味着每次声明Web进程并启动此类型的DYNO时,还运行命令gunicorn app:app
以启动您的Web服务器。
然后git add .
和git commit -m "added Procfile and requirements.txt"
。
然后运行git push heroku master
从local master
分支推到heroku remote
。只需确保您在Django Project root中初始化了GIT回购即可。这样,您的.git文件夹,.gitignore文件,manage.py,sumplast.txt等。在相同的层次级别上。
可以通过此方法指定Python的构建包
CLI安装
heroku buildpacks:set https://github.com/heroku/heroku-buildpack-python.git
最终确保您不会忽略.gitignore的requirements.txt
,这是我的问题。
- >确保您的要求.txt&procfile位于根文件夹中。
- >如果您还不在主分支中,请运行以下命令。
git checkout -b master
git add .
git commit -m "your commit message"
git push -u origin master
git push heroku master
检查是否执行了以下步骤:
-
激活您的虚拟环境。
-
在您的命令提示符上运行:
pip freeze>requirements.txt
-
在您的主应用程序目录中添加
Procfile
(manage.py
是);
copfile内部您应该插入:
web: gunicorn your_app_name.wsgi
好吧,当我创建第一次 HEROKU 应用程序时,我也发生了同样的事情。只需添加requirements.txt
即可。它会很好地工作。
我刚刚从我的github存储库中删除了readme.md,该存储库连接到我的Heroku应用程序,这对我有用!
检查您是否编写了正确的procfile and sumperienct.txt拼写拼写,因为它们对案例敏感,在我的情况下,在更改procfile以进行procfile之后,它开始正常工作。
<</p>运行此命令:
heroku buildpacks:set heroku/python
您也可以参考此文档。