git - resultados - por favor asegúrese que tiene los permisos de acceso correctos y que el repositorio existe
Heroku ''Permiso denegado(publickey) fatal: no se pudo leer desde el repositorio remoto'' aflicciones (14)
El problema que estaba teniendo es que solo estaba usando https para mi cuenta de GitHub. Necesitaba asegurarme de que mi cuenta de GitHub estaba configurada para acceso ssh y que GitHub y heroku usaban las mismas claves públicas. Estos son los pasos que tomé:
Navegue al directorio ~ / .ssh y elimine id_rsa e id_rsa.pub si están allí. Empecé con llaves nuevas, aunque podría no ser necesario.
$ cd ~/.ssh $ rm id_rsa id_rsa.pub
- Siga los pasos en gitHub para here
Inicie sesión en heroku, cree un nuevo sitio y agregue sus claves públicas:
$ heroku login ... $ heroku create $ heroku keys:add $ git push heroku master
He buscado durante muchas horas buscando una solución a mi problema aparentemente fácil de arreglar. No es que mi búsqueda no haya encontrado nada, es que mi búsqueda arrojó tantas soluciones diferentes, ninguna de las cuales funcionó.
De todos modos, simplemente no puedo empujar, tirar o buscar desde mi repositorio de Heroku desde mi Mac. Cada intento me da (como si me estuviera burlando) el siguiente error:
''Permiso denegado (publickey). fatal: no se pudo leer en el repositorio remoto. ''
He intentado (y vuelto a intentar) solucionarlo de muchas formas diferentes. Como ya he dicho, he pasado una buena parte de los últimos dos días buscando una respuesta. Estas son algunas de las cosas que he intentado:
- claves heroku: borrar seguido de claves heroku: agregar
- Regenerando una clave ssh por mi cuenta con ''ssh-keygen -t rsa''
- Borrar mi directorio .ssh, seguido de las claves heroku: borrar, seguido de generar una clave ssh
- Eliminar mi aplicación en heroku y recrear una (afortunadamente no había mucho ahí)
Puedo buscar en mi repositorio de GitHub, así que sé que no se trata de conectividad de red (pingus heroku también funciona).
Como una solución improvisada (que espero que no se convierta en una solución permanente), he iniciado sesión en mi instancia Ubuntu Amazon AWS ec2. Tirando y empujando hacia y desde Heroku funciona a la perfección. Por esta razón, todavía siento que el problema radica en la clave ssh de mi Mac. Ambas teclas aparecen bajo mi cuenta de Heroku. ¿La dirección de correo electrónico al final de la clave importa?
EDITAR: Puedo presionar y tirar de GitHub bien (no estoy usando ssh, sin embargo), ¿por qué no Heroku?
En este punto, estoy dispuesto a intentar cualquier cosa. ¡Gracias!
Me gustaría agregar otra solución ya que no la vi aquí. Mi problema era que heroku estaba vinculando a la URL incorrecta (ya que seguí jugando con nombres de url). La edición de la URL remota resolvió mi problema:
git remote set-url heroku <heroku-url-here>
Mi camino en Windows 8
Agregue un directorio con ssh-keygen a la variable PATH del sistema, generalmente C: / Archivos de programa (x86) / Git / bin
Abra CMD, vaya a C: / Users / Me /
Generar la clave SSH
ssh-keygen -t rsa
Introduzca el archivo en el que desea guardar la clave (//.ssh/id_rsa): .ssh / id_rsa (cambie una ruta incorrecta predeterminada a .ssh / somegoodname_rsa)
https://devcenter.heroku.com/articles/keys
heroku keys:add
Seleccione una clave creada de una lista
Ve al directorio de tu aplicación, escribe un código hermoso
Inici a un git repo
git init
git add .
git commit -m ''chore(release): v0.0.1
Crear la aplicación Heroku
heroku create
Implementa tu aplicación
git push heroku master
Abra su aplicación
heroku open
Necesita crear una nueva clave ssh escribiendo lo siguiente: ssh-keygen -t rsa
Luego debe agregar: - claves heroku: agregar
Entonces, si escribes - heroku abierto
El problema ha sido resuelto.
Me funcionó de todos modos, podrías intentarlo ...
Obtuve el mismo error, y porque tengo 4 ssh-keys, así que traté de seguir:
ssh-keygen -t rsa
heroku keys:add
luego, cuatro opciones muestran:
1) github_rsa.pub
2) id_boot2docker.pub
3) id_rsa.pub
4) sshkey.pub
Elijo 3), el más nuevo
Entonces, soluciono el error.
Sé que esto ya ha sido respondido. Pero me gustaría agregar mi solución, ya que puede ser útil para otros en el futuro.
Un error clave común es: Permission denied (publickey)
clave Permission denied (publickey)
. Puedes arreglar esto usando las keys:add
para notificar a Heroku tu nueva clave.
En resumen, siga estos pasos: https://devcenter.heroku.com/articles/keys
Primero debes crear una clave si no tienes una:
ssh-keygen -t rsa
En segundo lugar, debes agregar la clave a Heroku:
heroku keys:add
SO Así que, solución simple, vaya a c: /Users/user_name/.ssh/ y elimine todos los pares de clave pública / privada, de esta manera heroku generará las claves para usted.
Solo pensé en compartir que encontré la respuesta a mi propia pregunta.
Escribir mi problema me lo dejó aún más claro, y luego investigué dónde creía que estaba mi problema: la clave ssh
Resulta que yo tenía razón. El problema no era con la clave en sí, sino que no la había agregado a la lista de teclas ssh conocidas de mi Mac local. Así que, aunque mi cuenta de Heroku tenía la clave correcta cargada, mi Mac no pudo autenticarse con ella porque no pudo encontrar esa clave en mi computadora. ¿La solución?
ssh-add ~/.ssh/id_rsa
#and, to confirm it''s been added to the known list of keys
ssh-add -l
Me gustaría dar crédito a https://help.github.com/articles/error-permission-denied-publickey por ser una buena referencia.
Tuve el mismo caso en Linux Ubuntu y simplemente lo arreglé, parece que el sistema operativo se confundió entre /root/.ssh/ y home / user / .ssh / dir, lo que hice fue:
- eliminó todas las claves del directorio root y home / user .shh.
- here asegúrese de prestar atención a la ruta de creación (/home/you/.ssh/id_rsa) o (/root/.ssh/id_rsa)
- revisa las llaves
heroku keys
- si las llaves allí claras
heroku keys:clear
-
heroku keys:add
ahora aquí si heroku no pudo encontrar una clave y le pidió que generara un no correcto, y esto significa que tiene el mismo problema que el mío, haga el comando agregar como estasheroku keys:add /root/.ssh/id_rsa.pub
la ruta que agregará será la que obtuvo en el paso 2. - prueba
git push heroku master
ahora
Tuve el mismo problema. Intenté restablecer mis llaves como todos decían, pero aún así no funcionó. Porque fue porque cambié el nombre de la aplicación.
Entonces, lo que hice fue restablecer mis llaves y también cambiar el nombre de la aplicación de la consola. Consulte esta pregunta para obtener más información: problema de la aplicación Heroku push
Tuve exactamente el mismo error (en Windows 7) y la causa fue diferente. Lo resolví de otra manera, así que pensé en agregar la causa y la solución aquí para otros.
A pesar de que el error parecía apuntar a heroku realmente el error decía "Heroku can''t get to the git repository"
. Juraba que tenía las mismas llaves en todos los servidores porque las creé y las cargué una tras otra al mismo tiempo.
Después de pasar casi un día en esto, me di cuenta de que porque git solo me estaba mostrando la huella digital y no la clave real. No pude verificar que su clave concuerde con la de mi HD o heroku. Busqué en el archivo de hosts conocidos y adivinen qué ... muestra las claves para cada servidor y pude ver claramente que las claves públicas de git y heroku no coincidían.
1) Eliminé todos los archivos en mi carpeta de claves, la clave de github usando su sitio web, y la clave de heroku usando git bash y el comando heroku keys:clear
2) Seguí las instrucciones de github here para generar un nuevo par de claves y subir la clave pública a git
3) usando las heroku keys:add
git bash-
heroku keys:add
para cargar la misma clave a heroku.
Ahora git push heroku master
funciona.
qué pesadilla, espero que esto haya ayudado a alguien.
Bryan
Tuve un error heroku ssh similar que no pude resolver.
Como solución alternativa, utilicé la nueva función heroku http-git (transporte http para el control remoto "heroku" en lugar de ssh). Detalles aquí: https://devcenter.heroku.com/articles/http-git
(Versión corta: si ya tiene un proyecto configurado de la manera estándar, ejecute heroku git: remote --http-init para cambiar el control remoto "heroku" a http.)
Un buen trabajo rápido si no tienes tiempo para arreglar / solucionar un problema ssh.
Tuve un problema similar e intenté muchas cosas. Finalmente, lo que funcionó para mí fue instalar Gnu en Windows ( https://github.com/bmatzelle/gow/releases ) y asegurarme de que estaba utilizando la herramienta ssh dentro de ese directorio y no la de Git. Una vez instalada la prueba con (asegúrese de que esté en su entorno PATH que precede a Git / bin)
C:/Git/htest2>which ssh
C:/Program Files (x86)/Gow/bin/ssh.BAT
Usé masilla y desfiladero como se describe aquí: http://rubyonrailswin.wordpress.com/2010/03/08/getting-git-to-work-on-heroku-on-windows-using-putty-plink-pageant/
Una vez que las claves hayan sido enviadas a heroku (claves heroku: agregue c: / Users / Person.ssh / id_rsa.pub), use
ssh -v <username>@heroku.com
y asegúrese de que su pila muestre el uso de Putty, es decir, una pila de trabajo:
Looking up host "heroku.com"
Connecting to 50.19.85.132 port 22
Server version: SSH-2.0-Twisted
Using SSH protocol version 2
**We claim version: SSH-2.0-PuTTY_Release_0.62**
Using Diffie-Hellman with standard group "group1"
Doing Diffie-Hellman key exchange with hash SHA-1
Host key fingerprint is:
ssh-rsa 2048 8b:48:5e:67:0e:c9:16:47:32:f2:87:0c:1f:c8:60:ad
Initialised AES-256 SDCTR client->server encryption
Initialised HMAC-SHA1 client->server MAC algorithm
Initialised AES-256 SDCTR server->client encryption
Initialised HMAC-SHA1 server->client MAC algorithm
Pageant is running. Requesting keys.
Pageant has 1 SSH-2 keys
Using username "*--ommitted for security--*".
**Trying Pageant key #0**
Authenticating with public key "rsa-key-20140401" from agent
Sending Pageant''s response
Access granted
Opened channel for session
Server refused to allocate pty
Server refused to start a shell/command
FATAL ERROR: Server refused to start a shell/command
Uno que se estaba ejecutando anteriormente y que falló:
C:/Git/htest2>ssh -v <username>@[email protected]
OpenSSH_4.6p1, OpenSSL 0.9.8e 23 Feb 2007
debug1: Connecting to heroku.com [50.19.85.156] port 22.
debug1: Connection established.
debug1: identity file /c/Users/Person/.ssh/identity type -1
debug1: identity file /c/Users/Person/.ssh/id_rsa type 1
debug1: identity file /c/Users/Person/.ssh/id_dsa type -1
debug1: Remote protocol version 2.0, remote software version Twisted
debug1: no match: Twisted
debug1: Enabling compatibility mode for protocol 2.0
**debug1: Local version string SSH-2.0-OpenSSH_4.6**
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-cbc hmac-md5 none
debug1: kex: client->server aes128-cbc hmac-md5 none
debug1: sending SSH2_MSG_KEXDH_INIT
debug1: expecting SSH2_MSG_KEXDH_REPLY
debug1: Host ''heroku.com'' is known and matches the RSA host key.
debug1: Found key in /c/Users/Person/.ssh/known_hosts:1
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: Next authentication method: publickey
debug1: Trying private key: /c/Users/Person/.ssh/identity
debug1: Offering public key: /c/Users/Person/.ssh/id_rsa
debug1: Server accepts key: pkalg ssh-rsa blen 277
debug1: Trying private key: /c/Users/Person/.ssh/id_dsa
debug1: No more authentication methods to try.
Permission denied (publickey).
Utilizo este método para resolver este problema. Quizás puedas probarlo.
"Habilitar ssh-agent"
- Descargar git
Instalarlo
Habilitar ssh-agent
C: / Archivos de programa / Git / cmd
start-ssh-agent
El mensaje desaparece después de que el agente habilitado Espero que esto te ayude