I'm trying
to create a staging branch on Heroku, but there's something I don't quite get.
Assuming I've already created a heroku app and setup the
remote to point
to staging-remote, If I do:
git checkout -b staging staging-remote/master
I get a local branch called 'staging' which tracks staging-remote/master - or that's what I thought....
But:
git
remote show staging-remote
Gives me this:
remote staging
Fetch URL:
[email protected]:myappname.git
Push URL:
[email protected]: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)
As you can see, the pull looks reasonable, but the default push does not. It implies that if I do:
git push staging-remote
I'm going
to push my local master branch up
to the staging branch. But that's not what I want.... Basically, I want
to merge updates into my staging branch, then easily push it
to heroku without having
to specify the branch like so:
git push staging-remote mybranch:master
The above isn't hard
to do, but I want
to avoid accidentally doing the previous push and pushing the wrong branch... This is doubly important for the production branch I'd like
to create!
I've tried messing with git config, but haven't figured out how
to get this right yet...