Por favor, desculpe a frustração, que tentarei manter sob controle, já que o Heroku está usando o SO como seu suporte ao cliente (o que eu acho de má qualidade, para dizer o mínimo).
Nas últimas cinco horas, tenho tentado publicar um aplicativo, mas invariavelmente algo dá errado com as chaves. Eu li dezenas de artigos e tentei dica após dica na tentativa de descobrir onde, no processo estúpido e completamente opaco, o Heroku está bagunçando.
Meu caso de uso não é tão difícil: eu criei um novo par de chaves para meus aplicativos heroku. Eu defini essa chave para ser minha chave:
> heroku keys
=== [email protected] Keys
ssh-rsa AAAAB3NzaC...avOqfA7ZBd [email protected]
Posso entrar e "criar" um aplicativo (nome estúpido, já que parece estar criando um repositório git, não qualquer tipo de aplicativo) sem problemas. Mas toda * maldita * vez que tento empurrar meu aplicativo, recebo:
> git push heroku master
Permission denied (publickey).
fatal: The remote end hung up unexpectedly
Não tenho nenhuma ideia do que está acontecendo com o WTF; Estou apenas batendo minha cabeça contra um teclado sem nenhum recurso, mas espero que o Deus Todo-Poderoso do Google possa responder. E o Google não está respondendo (bem, deixe-me voltar, já vi uma dúzia de maneiras de responder).
Para um sistema que deveria ser fácil, isso é uma piada. Gosto da ideia do Heroku, mas depois de tirar cinco para não fazer absolutamente nada , estou pensando que talvez seja a escolha errada.
Respostas:
Existem várias soluções na web. Vou tentar condensar as opções disponíveis em uma postagem. Tente sua conexão novamente após cada etapa.
Etapa 1: tente adicionar sua chave pública ao Heroku
Etapa 2: gere um novo conjunto de chaves SSH e tente a primeira etapa novamente
https://help.github.com/articles/generating-ssh-keys
Etapa 3: verifique e / ou modifique seu arquivo de configuração
Passo 4: Remover o heroku remote do git, recriar a conexão, adicionar o remote via heroku create será apenas uma opção para novos repositórios. Certifique-se de excluir seu repositório antigo que você originalmente tentou criar
Etapa 5: Reinstalar o Heroku Toolkit
fonte
heroku create
?git heroku create
não é uma coisa, até onde eu sei.Sua chave heroku e as chaves do github não estão sincronizadas.
Determine qual chave você deseja usar (recomendamos a criação de uma nova, por exemplo, heroku_rsa).
Adicione a chave ao github.
Adicione a mesma chave ao heroku usando:
heroku keys:add
fonte
Encontrei o mesmo problema e esta é minha teoria sobre o que está acontecendo:
Eu me inscrevi no Heroku há muito tempo, dando a eles minha chave pública do github. Ao tentar o de costume
git push heroku master
, ele vai e procura minha chave privada, encontrada em~/.ssh/github_rsa
. Em seguida, ele falha silenciosamente com a mensagem que você postou.No entanto, tentei mais tarde
ssh
entrar em outro servidor usando o-i
sinalizador para especificar meu "arquivo de identidade" (ou seja, chave privada), e ele me solicitou a senha da minha chave privada. Tendo "desbloqueado" a chave privada, ogit push heroku master
comando funciona. Algumas conclusões:ssh
solicitará a senha para um arquivo de identidade,git
não.ssh
, ele permanecerá desbloqueado para seugit
uso.keytool
.fonte
Permissão negada (publickey) ao implantar o código heroku. fatal: O terminal remoto desligou inesperadamente
Acho que isso pode ter sua solução, pelo menos para mim
fonte
Comigo, parecia que o problema era que eu tinha o ssh-agent em execução em segundo plano e a chave privada relevante não havia sido adicionada a ele.
Também tive que adicionar a chave pública ao github (manualmente) e ao heroku
fonte
Se nenhuma das outras soluções funcionar para você, certifique-se de estar logado no shell do Linux com sua conta e não com a conta root .
Dessa forma, se você estiver executando com o usuário que não é o proprietário de suas chaves ssh, o git irá procurar as chaves erradas para autenticar
fonte