我们第一次尝试将一个大型Rails项目部署到Heroku,但是在Heroku编译过程中出现了一些问题,我们有no way of knowing what。
所以现在我们要计划B,这是为了走向提交链并测试部署Heroku的每一步,直到我们弄清楚它在哪一点变得不可编译。 (是的,这是我现在能想到的最好的。)
所以我想我只是在本地克隆项目,检查一些旧的提交,并推送到heroku。但后来我发现,如果我从除了主人之外的任何东西推送到heroku,它不构建应用程序?相反它说:“推向非主分支,跳过构建。”
所以现在,即使我的糟糕计划也不是首发。我只是想在这里休息一下。关于如何做我想做的事情的任何想法?
答案 0 :(得分:15)
如果您从主人推送,那么Heroku只会构建,而Heroku只会在您将推送到主人时构建。如果你这样做
git push heroku
然后你可能会将你的本地分支推送到Heroku上具有相同名称的分支(确切的默认行为是可配置的)。您可以使用
从其他本地分支推送到Heroku mastergit push heroku my_local_branch:master
或者,如果您已经在my_local_branch
签出,则可以使用
git push heroku HEAD:master
请参阅documentation for git push
- 最后的示例可能会有所帮助。
您可能还需要使用-f
来强制推送:
git push -f heroku my_local_branch:master
答案 1 :(得分:13)
使用heroku实现所需的结果要容易得多,而不是检查代码并推送它的多步git过程。这可以保持你的git历史清洁。
$ heroku releases
$ heroku rollback v11
答案 2 :(得分:0)
如果你想将某个提交推送到 heroku,可以这样做:
git push heroku 5ad0f3d913f2a92cc095af9c7b6242263da58160:master
只需将 5ad0f3d913f2a92cc095af9c7b6242263da58160
替换为您想要的提交。