使用 heroku CLI 部署 GitHub 分支
Posted
技术标签:
【中文标题】使用 heroku CLI 部署 GitHub 分支【英文标题】:Deploy a GitHub branch using heroku CLI 【发布时间】:2018-08-27 04:13:42 【问题描述】:我想做这个动作:
使用 Heroku CLI。
如果我的电脑上有远程 git,我可以git push my-heroku-remote master
但由于我的 heroku 应用程序已经连接到 git 项目,我发现这种方法是多余的。
有什么想法吗?
【问题讨论】:
【参考方案1】:我更喜欢 GitHub 自动部署而不是 git push heroku master
,因为它与 GitHub 流(将请求拉到主控)配合得很好。但是,如果您希望从您的开发机器手动部署到 Heroku,您可以获取和推送:
git fetch origin master:master
git push heroku master:master
(假设 GitHub 远程命名为 origin
,Heroku 远程命名为 heroku
。)
【讨论】:
谢谢,但这只能解决部分问题——我运行它的机器应该知道 git 项目——而 Heroku 已经知道了。所以是双重配置 @YardenST 你能提供更多细节吗?我不清楚你在寻找/试图避免什么。 是的。我们需要假设 Heroku 项目可以访问 git 项目。因此理论上 - 我应该只能运行heroku ...
命令,该命令将从主分支构建应用程序。但是,在您的示例中-您正在使用 git 命令,我希望这对于我的解释来说可能是多余的。因为我想要一个无法直接访问 git 项目的构建过程。
好的,我想我明白了。您需要手动部署 GitHub 分支按钮的 Heroku CLI 等效项。但是您不想要自动分支部署。对吗?
是的,比如heroku deploy:master -a myapp
【参考方案2】:
取自here:
这可以通过builds-create Platform API 端点来完成。
有一个Builds CLI plugin 让这更容易:
heroku builds:create --source-url https://user:token@api.github.com/repos/<username>/<repo name>/tarball/master/ --app <app-name>
其中 user 是您的 Github 用户名,token 是 Github 个人访问令牌 (reference)
【讨论】:
以上是关于使用 heroku CLI 部署 GitHub 分支的主要内容,如果未能解决你的问题,请参考以下文章
如何更新使用 GitHub“部署到 Heroku”按钮创建的 Heroku 应用程序?
如何解决 vue-cli-service: 在heroku 上找不到问题?