我正在尝试将一个基本应用程序从Github部署到Heroku。
按照Heroku指南的指示进行操作
事情是这样的。当我从 github 存储库克隆时,我克隆了一个特定的分支,该分支比 master 早 8 次提交。
我克隆该特定分支的原因是它是最先进的。每个分支都建立在前一个分支之上。
我不想将该分支合并到主节点中,因为我不知道如何撤消它。
当我尝试从上面的指南中执行此步骤时:heroku ps:scale web=1
,我总是得到这个:Scaling dynos... failed
! App must be deployed before dynos can be scaled.
为什么会这样?建议?
如果这个问题需要进一步澄清,请告诉我。谢谢。
编辑
作为记录,它有Procfile,其中包含以下内容:web: bundle exec unicorn -p $PORT -c ./config/unicorn.rb
编辑 2
当我做git push heroku branch_name
时 - 这就是我得到的:
Delta compression using up to 4 threads.
Compressing objects: 100% (243/243), done.
Writing objects: 100% (389/389), 727.55 KiB | 0 bytes/s, done.
Total 389 (delta 111), reused 389 (delta 111)
remote: Pushed to non-master branch, skipping build.
编辑 3
我遵循了这个线程的第一个答案。
它起作用了,并在Heroku中重新启动了该应用程序。
但是我用这条线重新启动了它:heroku restart --app name_of_app_in_heroku
并得到这个:Restarting dynos... done
然后我尝试做heroku open --app name_of_app_in_heroku
,我得到的只是基本的欢迎页面。我该如何克服这个问题?
另外,我刚刚查看了Heroku的仪表板,并检查了该应用程序,它说它没有dynos。这怎么可能?
编辑 4
另外,我刚刚运行了以下命令:heroku pg:info
并得到了这个答案:name_of_app_in_heroku has no heroku-postgresql databases.
但这不应该,我可以在应用程序仪表板的设置中的应用程序配置变量中看到数据库的 URL。
从未部署过(因为您正在尝试部署非主分支,而 heroku 一直忽略推送)
当你推送到heroku时,分支的名称需要在heroku一侧是master。
默认情况下,git push
为两端保留相同的名称:
git push heroku some_branch
尝试(假设上游设置正确等)使用同名的本地分支更新 heroku 远程上名为"some_branch"的分支。
要使用其他名称,您需要这样做
git push heroku some_branch:master
这意味着将更改从本地称为some_branch的分支推送到 heroku 的主分支
部署应用时,请尝试执行此操作
gp heroku master -f
heroku run rake db:migrate --app APPNAME
heroku restart --app APPNAME
heroku open --app APPNAME
这是我将项目部署到 Heroku 时使用的行