A parte 'heroku' é o nome do controle remoto que você configurou - quando você cria um aplicativo heroku pela primeira vez, ele cria uma chamada remota git 'heroku' apontando para seu aplicativo - se você digitar 'git remote' dentro de seu projeto, irá mostrar-lhe os terminais remotos. Não há nada que o impeça de usar 'heroku' como o nome do controle remoto - se você tiver vários ambientes para seu aplicativo, pode ter controles remotos chamados de produção ou teste, por exemplo.
A parte 'master' é o branch local que você deseja enviar para o remoto. Se você desenvolver em um branch de recurso, por exemplo, denominado 'myfeature' e quiser implantá-lo no heroku, você o faria;
git push heroku myfeature:master
o adicional: master aqui está dizendo para empurrar meu myfeature
branch local para o master
branch no remoto - nota: o heroku só pode implantar do branch master.
Se você renomear um aplicativo, o url remoto do heroku git mudará - faça um git remote -v
que mostrará o repositório git que seu aplicativo está usando, você provavelmente precisará excluir sua origem antiga do heroku e adicionar a nova, git remote rm heroku
entãogit remote add heroku git@newgitpathfromcontrolpanel
Para aprender mais sobre o Git, eu recomendaria este livro
git remote set-url <remote-name> <new-url>
(Git 1.7.0 e posterior), ougit config remote.<remote-name>.url <new-url>
, ou editando.git/config
(possivelmente atravésgit config -e
do Git 1.6.3 e posterior).PARTE 1: "Como o git sabe para onde ir?"
Antes de executar o comando mencionado acima:
Sempre há algumas outras etapas a serem executadas: instalação do Git e do Heroku, criação de um repositório Git local, inscrição no heroku, login do heroku via linha de comando, criação do manipulador do heroku para o ponto de hospedagem ( explicado na PARTE 2 )
1. Um repositório Git local:
2. Ter inscrição (ed) para Heroku e logado via linha de comando:
Então, ao executar
$ git push heroku master
você enviou o código / aplicativo para o Heroku.PARTE 2: mas o que heroku e mestre indicam?
É mais uma questão de Git do que Heroku - Heroku é uma plataforma de hospedagem, que depende do Git (Sistema de Controle de Versão Distribuída) para implantação.
O conceito básico de 'push' é enviar alguma coisa (arquivo, aplicativo, ..) que temos localmente (em nossa máquina de trabalho) para outro lugar, neste caso, para um repositório remoto (máquina remota).
No Git, antes de usar 'push', criamos um remoto (identificador) que atua como uma referência para um repositório remoto (URL completo), fazemos isso usando o seguinte comando:
A estrutura básica do comando 'push' é:
O mesmo
$ git push heroku master
ocorre com o envio de seu código / aplicativo / arquivo (de algum repositório Git local) para um repositório remoto 'heroku'.perguntando-se quando este controle remoto 'heroku' foi criado, ele foi adicionado quando você executou $ heroku create
Observe a última linha " Git remote heroku adicionado ".
para deixar mais claro, aqui está um comando Git para verificar / produzir todos os remotos: $ git remote -v exibirá algo semelhante ao seguinte
Portanto, podemos supor que o seguinte comando foi executado (implicitamente) em algum lugar, quando você fez $ heroku create , criando, portanto, o heroku remoto para algum repo (url) heroku *
fonte
heroku é necessário como parte da joia heroku para auxiliar no push, e master é simplesmente o branch git que você está empurrando. O git sabe para onde enviar porque você cria um aplicativo heroku e o push é configurado automaticamente, que você pode ver digitando
se você precisar mudar isso, remova-o com
git remote rm heroku
e, em seguida, adicione seu novo aplicativo comgit remote add heroku [email protected]:your-application-15.git
fonte
heroku
é o nome do controle remoto e está totalmente desconectado da joia heroku.Outras respostas ótimas para a primeira metade da sua pergunta ...
Aqui está a resposta sucinta para a segunda metade.
via https://devcenter.heroku.com/articles/renaming-apps#updating-git-remotes
fonte
Assim como você, eu também me esforcei para entender esses detalhes do git e do heroku e fiquei confuso também. Mas agora tenho um pouco de clareza para responder resumidamente à sua pergunta.
Supondo que você tenha git setup no diretório do projeto. Existe uma pasta oculta .git na pasta do seu projeto que contém um arquivo chamado "config" que contém todas as informações sobre controles remotos.
Remotos são seus repositórios individuais nomeados individualmente como origin, heroku, staging, prod etc.
Em seu comando, heroku representa o repositório que você mapeou para o projeto heroku. Abra o arquivo de configuração e você verá a URL.
Quando você corre
você está dizendo ao git para enviar o branch master do repositório de origem atual para o branch master do repositório heroku
Resto todos os detalhes já estão compartilhados em outras respostas, então não quero repetir. Portanto, esta é apenas uma resposta curta pelo meu entendimento. Espero que ajude.
fonte
Eu encontrei a resposta que você pode estar interessado no heroku:
https://dashboard.heroku.com/apps/NAMEOFYOURAPP/deploy/heroku-git
Dessa forma, o heroku saberá onde empurrar!
fonte