如何更新使用 GitHub“部署到 Heroku”按钮创建的 Heroku 应用程序?
Posted
技术标签:
【中文标题】如何更新使用 GitHub“部署到 Heroku”按钮创建的 Heroku 应用程序?【英文标题】:How to update an Heroku App created using GitHub "Deploy to Heroku" button? 【发布时间】:2015-04-28 12:58:23 【问题描述】:我使用 GitHub 的“部署到 Heroku”按钮创建了一个应用程序。由于 git 项目已更改,如何使用新的上游提交更新我现有的实例?
【问题讨论】:
【参考方案1】:Heroku 的 Web 控制台也可以轻松做到这一点。将您的应用程序连接到 GitHub 存储库以从选定的 git 分支自动或手动部署。自动部署也可以等到 CI 通过。使用以下步骤配置您的项目。
设置
-
转到应用配置页面中的以下部分
Deploy
对于Deployment method
,请单击GitHub
对于 App connected to GitHub
,选择并连接您的存储库
自动部署
-
在您的应用配置页面中转到以下部分
Deploy
> Automatic deploys
验证/选择您想要的分支
可选择单击Wait for CI to pass before deploy
点击Enable Automatic Deploys
手动部署
-
在您的应用配置页面中转到以下部分
Deploy
> Manual deploys
验证/选择您想要的分支
点击Deploy Branch
截图
这是显示 UI 的屏幕截图:
注意:正如Tim Malone 所述,这仅适用于您自己的存储库,但这可以通过创建Skyost 所述的分叉来解决。
【讨论】:
唯一的问题是如果你部署了别人的应用程序——这通常是部署到 Heroku 按钮的用途。 @TimMalone 您只需创建要部署的存储库的分支。【参考方案2】:我去抓取原始存储库,然后将其强制推送到我在 Heroku 中的应用程序上。看起来像这样:
git clone https://github.com/USER/REPO.git
git checkout v0.7.3
git remote add heroku https://git.heroku.com/APP-NAME.git
git push -f heroku master
Heroku 可以轻松地为您的应用克隆存储库
heroku git:clone -a app-name
我最初尝试这样做,然后将原始存储库添加为远程并合并更改,但遇到了一些我不想弄清楚的麻烦。
【讨论】:
【参考方案3】:如果您已经克隆了应用程序,或者您想先从 Heroku 克隆,这里有一种方法。
# Clone app if you haven't already
heroku git:clone -a appname
# Get latest app
git remote add REPO https://github.com/USER/REPO.git
git branch -b REPO REPO/master
# Delete master
git branch -D master
# Remake it with latest
git checkout -b master
# And force push it to heroku
git push -f heroku master
【讨论】:
【参考方案4】:假设您的本地分支称为master
,您可以尝试:
git pull heroku master
请记住,如果您的本地分支和远程分支出现分歧,您可能会遇到合并冲突。这还假设您已将 heroku
配置为指向 repo 中的适当位置。
【讨论】:
以上是关于如何更新使用 GitHub“部署到 Heroku”按钮创建的 Heroku 应用程序?的主要内容,如果未能解决你的问题,请参考以下文章