我正在尝试在Heroku上创建一个staging分支,但有些东西我不是很明白。
假设我已经创建了一个Heroku应用程序并设置了远程指向staging-remote,如果我执行:
git checkout -b staging staging-remote/master
我有一个名为“staging”的本地分支,它跟踪着staging-remote/master - 或者至少我曾经这样认为...
但是:
git remote show staging-remote
给我这个:remote staging
Fetch URL: git@heroku.com:myappname.git
Push URL: git@heroku.com:myappname.git
HEAD branch: master
Remote branch:
master tracked
Local branch configured for 'git pull':
staging-remote merges with remote master
Local ref configured for 'git push':
master pushes to master (up to date)
从上面可以看出,拉取看起来很合理,但默认的推送不是这样。 这意味着如果我执行以下操作:
git push staging-remote
我将把本地主分支推送到暂存分支。 但这不是我想要的... 基本上,我想将更新合并到我的暂存分支中,然后轻松地将其推送到Heroku而无需像这样指定分支:
git push staging-remote mybranch:master
上述操作并不难,但我希望避免意外地进行先前的推送并推送错误的分支...... 这对我想创建的生产分支来说尤为重要!
我尝试过更改git配置,但还没有弄清楚如何正确实现...
git config remote。[remoteName] .push [localBranchName]:[remoteBranchName]
- nickgrimgit push remotename localbranch:remotebranch
。 - thekingoftruth