2013-08-16 9 views
29

Pracuję nad aplikacją internetową, która zostanie zepchnięta do Heroku. Źródło jest hostowane na GitHub.Jak wypychać różne gałęzie do różnych aplikacji heroku?

Tak więc git push popycha główny oddział do GutHub.

My git branch 'mistrz' jest podłączony do Heroku aplikacji 'my-app-staging'

Więc git push heroku popycha aplikację do my-app-staging.herokuapp.com

Utworzyłem nową aplikację Heroku który będzie 'produkcja' app, nazwijmy to "my-app-prod".

Utworzyłem oddział o nazwie "production" (tj. git checkout -b production) i uruchomiłem git push -u origin production, aby utworzyć oddział zarządzany na GitHub.

Teraz chcę połączyć production oddział my-app-prod.herokuapp.com taki sposób, że po włączeniu do production gałęzi mogę po prostu wpisać git push heroku (albo git push prod-heroku production lub podobny) i voila - oddział produkcyjny jest popychany do aplikacji produkcyjnych.

Jaki jest zalecany sposób połączenia mojego oddziału production z my-app-prod na Heroku?

Mam wallowed przez Heroku's own docs on this ale wszystkie one zakładają mam skonfigurować aplikacje wykorzystujące heroku create CLI, nie skonfigurować aplikacje za pośrednictwem strony internetowej Heroku jest jednak dodaje się ustęp właśnie sprawia, że ​​moje zawrót głowy:

Po wykonaniu git push staging master i git push production master po wykonaniu czynności opisanych powyżej można łatwo wykonać następujące czynności. Wielu programistów lubi jednak korzystać z gałęzi Git's , aby odseparować kod w toku i gotowy do produkcji. W tym rodzaju konfiguracji można wdrożyć do produkcji z gałęzi głównej, łącząc zmiany z gałęzi rozwojowej po ich przejrzeniu w aplikacji pomostowej. Dzięki tej konfiguracji, spychając jest trudniejsze littler:

gdzie chcę skończyć się następująco:

  1. W branży master: (a) git push popycha kod do GitHub, oraz (b) git push heroku popycha kodu do my-app-staging na Heroku
  2. odgałęzienia production: (C) git push umieszcza kod do production oddziału na GitHub i (d) git push heroku popycha kod production do my-app-prod na Heroku.

Biorąc pod uwagę, że krok 1 powyżej już istnieje, a krok 2 (c) został już wprowadzony, w jaki sposób mogę wykonać krok 2 (d)?

Odpowiedz

55

Należy dodać kolejny pilot do mojego app-Prod nazwie prod-Heroku (zastąpi GIT_URL z adresem URL Git, które można znaleźć na stronie ustawień mojego app-Prod w Heroku):

git remote add prod-heroku GIT_URL 
git push prod-heroku production:master 

Spowoduje to przeniesienie produkcji lokalnej oddziału do zdalnego master gałęzi w prod-heroku, dzięki czemu aplikacja my-app-prod zostanie wdrożona z kodem w gałęzi produkcyjnej.

+1

To jest idealne. I voila - gotowe. :-) –

Powiązane problemy