ruby – 当尝试使用现有的git repo上传Sinatra应用程序时,“Heroku推送被拒绝,没有检测到Cedar支持的应用程序”

我有一个现有的git repo用于我的个人网站,我将其移植到Sinatra(主要用于模板,它是一个静态站点).我不想丢失/重置这个git存储库.

当我尝试推送到Heroku时,我收到以下错误.我有一个config.ru文件,一个Gemfile和一个Gemfile.lock,以及Sinatra的其他一些东西.运行rackup工作,运行bundle exec rackup工作,我没有得到Heroku关于缺少依赖项的任何警告.

我错过了什么吗?我可以发布我的网站的目录结构,如果它会有所帮助(尽管它是近源的).

~/Repos/website ➜ gp heroku master
Counting objects: 2836,done.
Compressing objects: 100% (2669/2669),done.
Writing objects: 100% (2836/2836),3.48 MiB | 252 KiB/s,done.
Total 2836 (delta 481),reused 2117 (delta 155)

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

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

解决方法

Cedar应用程序应该识别config.ru文件并为您创建一个Web进程,因此git可能无法跟踪某些基本文件.检查config.ru,Gemfile和Gemfile.lock是否全部已提交(您可以使用git status,但请注意,它不会为被忽略的文件输出任何内容,因此您还应检查.gitignore文件).

如果提交了所有文件,您还可以尝试指定Web进程在procfile中使用的命令.有关更多信息,请参阅Heroku文档:

> Getting started with Ruby: Declare process types with Procfile
> Declaring and Scaling Process Types with Procfile

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...