Pregunta

(Usando Vista) Estoy tratando de clonar una aplicación desde mi repositorio de GitHub y empujarla a Heroku. Bien, he intentado crear una clave SSH tantas veces con esto:

 `ssh-keygen -t rsa` 

Parece ir perfectamente. Lo tengo en mi carpeta C: / Users / *** /. Ssh. Ahora trato de clonar una aplicación que bifurqué en GitHub. Cuando intento clonarlo en el directorio rails_apps, recibo un mensaje que dice

 Permission Denied(public key). 

Encontré una solución en la red que decía que debería ejecutar esto primero:

`ssh-add` 

Así que intenté hacer eso. Pero decía que:

No se pudo abrir una conexión con su agente de autenticación.

Luego, después de buscar en Google, encuentro algo sobre la ejecución del agente ssh. Entonces hago esto:

`ssh-agent bash`

y la línea de comando cambia de mi directorio rails_apps a este:

`bash3.1
`bash3.1
`bash3.1
`bash3.1
`bash3.1<*>gt;git push heroku master`
gt;cd myrepo` `bash3.1<*>gt;heroku create myapp`
gt;git clone git@github.com:username/myrepo.git`
gt;ssh-add [path to .ssh folder]`
gt;`

Entonces ejecuto:

<*>

y agrega con éxito la clave privada rsa (no funciona con id-rsa.pub). También pegué la clave pública recién generada en mi cuenta de GitHub.

Ahora cuando trato de clonar:

<*>

Ahora clona con éxito el repositorio que bifurqué en GitHub. Ahora que tengo la aplicación en mi repositorio local, trato de crear una aplicación heroku.

<*>

Y este código se ejecuta con éxito. Git remoto agregado con éxito. Ahora todo lo que tengo que hacer es presionarlo.

<*>

¡BAM! Recibo el mensaje de error nuevamente.

Permiso denegado (clave pública)

Estoy tan cerca de empujar mi aplicación a heroku. Pero simplemente no funcionará. Me puedes ayudar. ¿Qué estoy haciendo mal aquí? ¡Gracias! : D

¿Fue útil?

Solución

Nota: su ticket en el soporte de GitHub solicitó la respuesta:

  

Necesitas darle a heroku tu llave. Debería haber un comando para hacerlo. Si no puede encontrarlo, deberá ponerse en contacto con su soporte.

Para eso, vea Graeme Collins 's respuesta (y también Error de Heroku: " Permiso denegado (clave pública) " ):

heroku keys:add ~/.ssh/id_rsa.pub

Consulte Heroku devcenter para obtener más información sobre ese proceso.
Luego puede ver una lista de todas las claves, incluido el nombre de la clave, como este:

heroku keys

Nota: supongamos que no usó sudo para generar sus claves, como " permiso de git clone heroku ssh denegado " ilustra (donde heroku keys: add no funciona)


Más información sobre sus claves ssh en su otra Ticket de soporte de GitHub .

debug1: Trying private key: /.ssh/identity
debug1: Trying private key: /.ssh/id_rsa
debug1: Trying private key: /.ssh/id_dsa
  

No estoy seguro de por qué estaría mirando /.ssh y no ~ / .ssh entonces.
  Intenta mover tu par de llaves a ese camino.


¿No debería ser eso?

 git push origin master

? Por defecto, una referencia al repositorio clonado se llama 'origen', no 'heroku'

Qué hace

git remote -v show

pantalla?

Si lo desea, puede hacer referencia al repositorio distante por el nombre de heroku

git remote add heroku git@github.com:git_username/projectname.git

Otros consejos

Tuve un problema similar. Ejecutar el siguiente comando lo arregló para mí:

teclas heroku: agregue ~ / .ssh / id_rsa.pub

Sustituir " ~ / .ssh / id_rsa.pub " con su ruta a su archivo id_rsa.pub.

La siguiente línea resolvió el problema para mí.

heroku accounts:set youraccount

Puede iniciar sesión primero en heroku proporcionando Enail y Password y puede seguir los siguientes pasos para agregar un repositorio git local en una instancia de aplicación heroku.

  1. Emita este comando en Git Bash $ ssh-keygen -t rsa (ubicación predeterminada y con frase de contraseña vacía. También puede utilizar alternativas).
  2. Nuevamente, emita las teclas bash $ heroku: add (agregará automáticamente la clave pública desde la ubicación predeterminada).
  3. Emita esto en la fiesta para comprobar las claves. $ heroku keys.
  4. Puede agregar el control remoto para su nombre de aplicación $ heroku git: control remoto -a nombre_aplicación
  5. Ahora puedes enviar el repositorio git al heroku usando este comando $ heroku push origin master
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top