我想部署一个Heroku应用程序,理想情况下使用git push -u heroku master
完成。但是,只有在有任何挂起的提交被推送到master时才会有效。
如果没有什么可推送的话,我如何重新部署应用程序?我尝试了git push -u heroku master -f
,但仍然在下面
Branch master set up to track remote branch master from heroku.
Everything up-to-date
PS:我还想保留现有应用,这意味着我无法使用这个答案https://stackoverflow.com/a/22043184/968442
答案 0 :(得分:52)
通常设置config var会导致重新启动应用程序。在大多数情况下,执行此操作后无需重新部署。
如果您确实需要触发新部署,可以添加新的空提交,然后再次推送到Heroku:
git commit --allow-empty -m "Trigger Heroku deploy after enabling collectstatic"
git push heroku master
新的空提交是常规提交。它有一个哈希,一个作者,一个时间戳等。它将与其父树具有相同的树。这应该会导致Heroku使用与前一次提交相同的代码再次构建您的app slug。
这有点尴尬,但它确实有效。
答案 1 :(得分:21)
答案 2 :(得分:7)
现在还有一个Heroku命令行插件,可以让你重新发布最近部署的slug。
答案 3 :(得分:0)
您可以运行heroku restart --app app_name
,一切顺利。