Herokuプッシュが拒否され、Cedar対応のアプリが検出されませんでした


110

Rails 3.1.3でRailsアプリを作成しています:

git init
git remote add heroku <my heroku repo>
git add .
git commit -a -m "First commit"
git push heroku master

取得:

Counting objects: 102, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (86/86), done.
Writing objects: 100% (102/102), 315.47 KiB, done.
Total 102 (delta 3), reused 0 (delta 0)

**-----> Heroku receiving push
 !     Heroku push rejected, no Cedar-supported app detected**

To git@heroku.com:electric-dusk-3217.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to <my heroku rep>

走ってみましたheroku create [appname]か?
whirlwin 2011

私は杉のスタックにアプリを作成しました:heroku create --stack cedar
WHITECOLOR

5
このエラーは実際にはどういう意味ですか?
Himmators

回答:


155

私は同様の問題を抱えていましたが、Django(誤って「requirements.txt」と名付けられていました)が原因でした。ここで他の回答を一般化すると思います。このエラーが発生するのは、Herokuがアプリ(およびそのタイプ)を識別するために使用するいくつかのキーファイルがないためです。

  • php:index.php
  • python:requirements.txt
  • ruby:Gemfile #大文字に注意
  • ノード:package.json

6
ここでは、この問題に対する別の答えを(gitのレポを再初期化)が見つかりました:stackoverflow.com/questions/9305370/...
クリス

わかりやすいリマインダー:Procfileも用意します。Webアプリを実行している場合は、正しいスクリプトを指すProcfileを介してWebサービスが有効になっていることを確認してください。また、Heroku管理者のアプリでWeb dynoがオンになっていることを確認してください。remote: ----->Discovering process types...Procfile declares types -> web私のProcfile経由
Marc

おかげで、requirements.txtを追加すると役に立ちました。あなたはそれをコミット(Gitのレポに追加)し、再度プッシュしようとすべきであることをしてください注...
ItayB

48

問題は、私の「Gemfile」が「gemfile」という名前だったことでした。


@Whitecolorまったく同じ問題があり、ソリューションは機能しました!その後、他の複雑な問題に遭遇しました。でもありがとう。
トニー

1
これは私にとってだけでなく、明白ではない方法で起こりました。という名前のファイルがあっても、OSXで作業するとGemfilevi gemfileが開かれ、Gemfile保存時にgemfile警告なしにに名前が変更されます。
Bセブン

これが大文字と小文字を区別するパーティションを設定する良い理由だと思います...
B Seven

2
「Gemfile」とは何ですか?私はhtmlゲームを持っていて、それをherokuにプッシュしたいと思っています。そして、私は同じエラーが出ます
Alaeddine

45

このエラーメッセージに遭遇しましたが、私の問題は、Railsアプリがgitリポジトリのルートディレクトリにないことでした。ファイルをルートディレクトリに移動した後、すべてが機能しました。


3
それは貧弱な解決策のようです。サブディレクトリにある間にアプリをプッシュする適切な方法はありますか?
y0mbo 2012

1
私はgit-subtreeを使用しています。インストールに問題があったため、このヘルプ
Rian Rainey

同じ問題が発生しました-RoRのHerokuを始めたばかりで、この問題が発生しました。修正をありがとう。
Mahendra Liya 2013年

コマンドラインを確認し続けたところ、それは「正しい」ものでしたが、/ home / myapp / myappにいることに気付きました... doh ...
Will

私の場合も。私git initのアプリフォルダーをgitルートディレクトリとして使用すると、herokuへのプッシュが完了しました。ありがとう。
ソフィア・フォン


22

新しいアプリに関連付けられていませんが、... herokuにカスタムビルドパックをインストールして、それを忘れた後、同じエラーメッセージに遭遇しました。次にHerokuにデプロイするときに、次のことを確認しました。

-----> Fetching custom git buildpack... done

 !     Push rejected, no Cedar-supported app detected

修正はチェックすることでした:

 heroku config

そして、そこで、私はBUILDPACK_URL設定を解除しなければならないVarと呼ばれるものを見つけました:

heroku config:unset BUILDPACK_URL

...そして出来上がり!


うわー、それは大変でした。ありがとう!
Alexander Presber 2014

12

別の原因:非マスターブランチで作業しているときにマスターをプッシュしていました。私のマスターブランチにはrequirements.txtがありませんでした。

私はマスターからプッシュしたくありませんでしたが、herokuはマスターブランチにのみ注意を払っています。解決策は、私のローカルブランチをherokuのマスターブランチにプッシュすることでした:

git push heroku local_branch:master

2
あなたは私のヒーローです !私は何時間もかけてこれを見つけようとしました> <
Laurent

7

Railsアプリのこのエラーの別の原因:このデプロイエラーは、Gemfile.lockファイルからgitマージの競合を削除していないときに発生しました。


3

同じ問題がありました。「Gemfile」は「.gitignore」に含まれていたため、デプロイメントの一部ではありませんでした。HerokuはRailsプロジェクトにGemfileを必要とします。


3

Gemfileに表面的な変更を加えて再コミットすることで、これを修正しました。なんらかの理由で、前回のコミットには含まれていませんでした。


3


ここで同じ問題に遭遇しました。
次のように私のチェック:
1.「フォアマンスタート」がローカルでうまく機能することを確認します。
2. herokuアカウントで作成する新しいアプリが1つだけであることを確認します。
お役に立てば幸いです。


3

RailsTutorial.orgの手順に従っていたところ、このエラーが発生しました。この投稿の答えはどれもうまくいきませんでした。次に、このコメントこの回答につながったのを見て、チュートリアルで他の人の問題も解決できるようになりました。


原因は、RAIL_PROJECTディレクトリの親ディレクトリのリポジトリを初期化したことが原因だと思います。だから、杉がアプリの種類を認識できないようにしてください。ご回答有難うございます!
Robert


2

また、djangoベースのアプリにも問題がありました。ファイル名とその他の設定はすべて問題ないようです。

問題は、herokuコンソールでBUILDPACK_URL定義された設定があったためnode.js、djangoアプリケーションが拒否されたことです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.