如何调试我将Perloku应用程序推送到Heroku的失败?

时间:2012-03-23 23:33:24

标签: perl git heroku github

我正在尝试将Heroku用于Perl,但这个问题并不是Perl特有的。

[root@myhost MyApp-Perl]# git push heroku master
Pushing to git@heroku.com:MyApp-perl.git
Counting objects: 17, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (12/12), done.
Writing objects: 100% (17/17), 1.70 KiB, done.
Total 17 (delta 2), reused 0 (delta 0)

-----> Heroku receiving push
-----> Fetching custom buildpack... done
 !     Heroku push rejected, no Cedar-supported app detected

To git@heroku.com:MyApp-perl.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@heroku.com:MyApp-perl.git'

2 个答案:

答案 0 :(得分:0)

不幸的是,这个错误可能有很多原因。以下是一些猜测:

  1. 你是从正确的分支推? Heroku在'master'分支中查找代码。来自"Heroku Dev Center | Deploying With Git"

      

    “除了主人之外被推到Heroku的分支将被忽略......如果   你在本地工作的另一个分支,你可以合并到   在推送之前掌握,或指定您想要推送本地   分支到远程主站。要推送除master之外的分支,请使用   这句语法:

         

    $ git push heroku yourbranch:master“

  2.   
  3. 是否已将所有必需文件提交到您的git depo中? Getting Started articles上的每种语言和框架都有一定的要求在heroku上部署它们。例如,Ruby需要gemfile以及config.ru或Procfile。 Python需要Procfile和requirements.txt。如果您缺少任何必需的文件,heroku将无法检测到有效的雪松应用程序。
  4.      看起来你正在使用Perloku?如果是这样,你的git depo中有Makefile.PL吗?你有一个名为'Perloku'的可执行文件吗?您使用的是什么自定义构建包?

答案 1 :(得分:0)

我也遇到过这个问题,我终于解决了。这可能是因为你在Windows上运行。该脚本需要更改为可执行文件。

请检查https://github.com/judofyr/perloku/issues/6