0

我在 heroku 上部署了一个网络应用程序。为了更新正在运行的实例,我必须git push将我的代码放到masterheroku 远程的分支上。

我还将我的代码保存在 github 上,并将 github 作为我的origin上游存储库。我正在尝试一个稍微新的工作流程,因此我的 local-and-githubmaster分支包含我在本地工作的最新稳定版本;而本地和 githubrelease分支包含实际在 heroku 上运行的代码。

鉴于这一切,我的工作流程目前看起来像这样:

$ git checkout master
... make some changes ...
$ git commit
$ git push                # to origin/master - that is, github
$ git checkout release
$ git merge master
$ git push heroku master  # Push the release branch to heroku's master branch, thereby sending it live.

我想避免每次都在行master后输入。除了on之外,git push heroku我永远不想推动任何事情。是否可以更改我的 git 配置,以便推送到本地分支更新分支?masterherokuherokureleasemasterheroku

4

2 回答 2

1

将自定义 refspec 添加到配置并表示release分配给目标远程分支的主题分支master将执行所需的git push heroku操作。

git config --add remote.heroku.push refs/heads/release:refs/heads/master

换句话说,refspec 是说任何推送到这个遥控器:

  1. 源分支(本地)是release分支
  2. 目标分支(远程)是master分支
  3. 始终在此远程上传输release提交master

有关自定义 refspecs 的更多信息,请参见此处

于 2013-09-26T17:46:20.973 回答
0

混帐 1.8:

git branch --set-upstream-to=heroku/master release

混帐 1.7:

git branch --set-upstream release heroku/master

于 2013-09-26T13:13:31.303 回答