Я работаю над веб-приложением, которое попадает в герою. Источник размещен на GitHub.
Итак git push
толкает главную ветвь в GutHub.
My git branch 'master' подключен к приложению Heroku 'my-app-staging
'
Итак git push heroku
подталкивает приложение к my-app-staging.herokuapp.com
Я создал новое приложение Heroku, которое будет "продуктовым" приложением, пусть назовет его "my-app-prod
".
Я создал ветвь, теперь называемую "production
" (т.е. git checkout -b production
), и я запустил git push -u origin production
, чтобы сделать ее управляемой ветвью в GitHub.
Теперь я хочу связать ветвь production
с my-app-prod.herokuapp.com
таким образом, что при переключении на ветвь production
я могу просто ввести git push heroku
(или, возможно, git push prod-heroku production
или аналогичный), а voila - производственную ветвь помещается в производственное приложение.
Какой рекомендуемый способ привязать ветвь production
к my-app-prod
на Heroku?
Я обошел Heroku собственные документы об этом, но все они предполагают, что я настроил свои приложения с помощью heroku create
CLI, а не настроил свои приложения через сайт Heroku, однако следующий параграф просто заставляет мою голову вращаться:
Его просто ввести
git push staging master
иgit push production master
, когда вы следовали вышеприведенным шагам. Многим разработчикам нравится использовать git s однако ветки для отдельного незавершенного и готового к производству кода. В этом роде настройки, вы можете разворачиваться на производство из своей основной ветки, слияния в изменениях из ветки разработки после того, как они были просмотрены в промежуточном приложении. С этим настройка, нажатие является более сложным:
В конце концов я хочу:
- В ветке
master
: (a)git push
нажимает код на GitHub и (b)git push heroku
нажимает код наmy-app-staging
на Heroku - В ветке
production
: (c)git push
выталкивает код в ветвьproduction
на GitHub, а (d)git push heroku
нажимает кодproduction
наmy-app-prod
на Heroku.
Указанный шаг 1 выше уже установлен, и шаг 2 (c) установлен, как мне достичь шага 2 (d)?