How do I push different branches to different heroku apps?
I've been working on a web-app that gets pushed to heroku. The source is
hosted on GitHub.
So git push pushes the master branch to GutHub.
My git branch 'master' is connected to Heroku app 'my-app-staging'
So git push heroku pushes the app to my-app-staging.herokuapp.com
I've created a new Heroku app which will be the 'production' app, let's
call it 'my-app-prod'.
I have created a branch now called 'production' (ie git checkout -b
production) and I've run git push -u origin production to make it a
managed branch at GitHub.
I now want to link the production branch to my-app-prod.herokuapp.com such
that, when switched to the production branch I can simply type git push
heroku (or perhaps git push prod-heroku production or similar) and voila -
the production branch is pushed to the production app.
What's the recommended way to link my production branch to my-app-prod on
Heroku?
I've wallowed through Heroku's own docs on this but they all assume I've
set up my apps using the heroku create CLI, not set up my apps via
Heroku's website, however the following paragraph just makes my head spin:
It's simple to type git push staging master and git push production master
when you've followed the steps above. Many developers like to take
advantage of git's branches to separate in-progress and production-ready
code, however. In this sort of setup, you might deploy to production from
your master branch, merging in changes from a development branch once
they've been reviewed on the staging app. With this setup, pushing is a
littler trickier:
Where I want to end up is as follows:
In branch master: (a) git push pushes code to GitHub, and (b) git push
heroku pushes code to my-app-staging on Heroku
In branch production: (c) git push pushes code to the production branch on
GitHub, and (d) git push heroku pushes the production code to my-app-prod
on Heroku.
Given step 1 above is already in place and step 2 (c) is in place, how do
I achieve step 2 (d)?
No comments:
Post a Comment