Fai eseguire Heroku al ramo Git non master


182

Ho un progetto ospitato su Heroku ed è arrivato al punto in cui voglio creare un server di test alternativo (in modo da poter testare i lavoratori Heroku senza incasinare la produzione).

Ho già impostato il mio telecomando Heroku principale con il mio baule e un telecomando Heroku-dev sul quale desidero eseguire un ramo alternativo.

Il mio problema è che dal momento che il mio ramo alternativo non è padrone, Heroku non lo costruirà.

$ git push heroku-dev test
counting objects ...
...
Pushed to non-master branch, skipping build.
To git@heroku.com:example-dev.git
* [new branch]      test -> test

Passare questa build al master non è un'opzione al momento. Ovviamente un'opzione è quella di creare un repository git completamente nuovo che sia un clone del mio ramo di test, ma non sembra molto ideale.

Risposte:


361

Puoi spingere un ramo alternativo a Heroku usando Git.

git push heroku-dev test:master

Questo spinge il tuo ramo di test locale al ramo principale del telecomando (su Heroku).


12
Infatti - è anche documentato: devcenter.heroku.com/articles/…
Jon Mountjoy il

50
Vale anche la pena notare che, quando sei pronto per tornare al master, devi farlogit push -f heroku master:master
Brian Armstrong,

5
C'è un modo per schierarsi usando un ramo non master su Heroku, in modo da mantenere Heroku masterincontaminato per la promozione successiva?
Eric Walker,

3
No, Heroku usa sempre master. Qual è il tuo caso d'uso?
jordelver,

5
@SDP Qualcosa che ho fatto in passato per il debug di Heroku è commettere qualcosa, spingerlo su Heroku, quindi (se non ha funzionato) provare qualcos'altro, commetterlo (con git commit --amend), spingerlo su Heroku (usando la -fbandiera) e ripetere fino alla correzione. Una volta risolto, assicurati che il finale --amendsia un bel commit pulito con un messaggio sensibile e poi passa alla prossima cosa. In questo modo puoi testare tutto il giorno senza più commit. Non è carino ma fa il lavoro :)
Simon,

3

Nel mio caso, il ramo predefinito o di base è stato sviluppato , quindi ho usato:

          git push heroku develop:master 

0

Nel caso in cui git push heroku-dev test: master non funzioni per te, prova git push heroku test: master. Ricorda che "test" in "test: master" è il nome del nuovo ramo in cui ti trovi.


-1

È necessario estrarre il ramo remoto prima di poter spingere il ramo non master.

Eseguire il comando seguente nel repository locale

git pull https://heroku:YOUR_HEROKU_API_KEY@git.heroku.com/YOUR_APP_NAME.git
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.