2009-12-01 36 views
9

(usando Vista) Intento clonar una aplicación de mi repositorio de GitHub y enviarla a Heroku. De acuerdo, así que he tratado de crear una clave SSH tantas veces con esto:git push heroku permiso denegado en VISTA

`ssh-keygen -t rsa` 

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

Permission Denied(public key). 

he encontrado una solución en el dicho neta que debería ejecutar esta primera:

`ssh-add` 

así que traté de hacer eso . Pero dijo 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 de ssh-agent. Así que hago esto:

`ssh-agent bash` 

y la línea de comandos cambia de mi directorio rails_apps a esto:

`bash3.1$>` 

Así que corro:

`bash3.1$>ssh-add [path to .ssh folder]` 

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 intento de clonar:

`bash3.1$>git clone [email protected]:username/myrepo.git` 

Ahora clona con éxito el repositorio que se bifurcó en GitHub. Ahora que tengo la aplicación en mi repositorio local, intento crear una aplicación heroku.

`bash3.1$>cd myrepo` 
`bash3.1$>heroku create myapp` 

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

`bash3.1$>git push heroku master` 

BAM! Recibo el mensaje de error nuevamente.

Permission denied (public key)

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

+0

Lo que el 'git ¿El comando remote -v show' se muestra en su repo clonado? – VonC

Respuesta

1

Nota: su ticket on GitHub Support provocó la respuesta:

Es necesario dar heroku su clave. Debería haber un comando para hacerlo. Si no puede encontrarlo, deberá contactar a su soporte.

Por eso, ver Graeme Collins 's answer (y también Heroku error: "Permission denied (public key)"):

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

Ver Heroku devcenter para más información sobre este proceso.
A continuación, puede ver una lista de todas las claves, incluyendo el nombre de la clave, así:

heroku keys 

Nota: que suponga que no ha utilizado sudo para generar sus claves, como "git clone heroku ssh permission denied" ilustra (donde heroku keys:add no funciona)


Más información sobre sus claves SSH en su otra GitHub Support ticket.

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 a continuación.
Intenta mover tu par de llaves a esa ruta.


¿No debería ser:

git push origin master 

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

¿Qué

pantalla
git remote -v show 

?

Se desea, puede hacer referencia a la cesión temporal distante con el nombre heroku

git remote add heroku [email protected]:git_username/projectname.git 
+0

Gracias Von. Intenté lo que dijiste cambiando heroku a origen. No funcionó tan bien. Intenté el comando que dijiste. Ahora, cuando 'git push heroku master ' Dice Todo hasta al día embargo, la aplicación aún no está en heroku. No estoy seguro de lo que está pasando. –

62

tuve un problema similar. ejecutar el comando siguiente fijada por mí:

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

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

+0

Gracias, esta fue en realidad la respuesta correcta. Sabía que había cambiado mis llaves y solo estaba buscando el comando para actualizarlas :) – x10

+0

Estaba teniendo el mismo problema, ¡y funcionó para mí también! – Connor

+0

Eso me ayudó también. – jonas054

1

La siguiente línea me solucionó el problema.

heroku accounts:set youraccount 
0

Puede iniciar sesión primero heroku proporcionar Enail y contraseña y puede seguir los siguientes pasos para añadir un repositorio Git local en una instancia de aplicación heroku.

  1. Emita este comando en el Git Bash $ ssh-keygen -t rsa (ubicación predeterminada y con frase de contraseña vacía. También puede hacer otras alternativas).
  2. Problema nuevamente en las claves bash $ heroku: add (Agregará automáticamente la clave pública desde la ubicación predeterminada).
  3. Emitir esto en el bash para comprobar las claves. $ heroku claves.
  4. Puede agregar el control remoto para que la aplicación git nombre $ heroku: -a nombre_apl remota
  5. Ahora se puede empujar el repositorio git a la heroku usando este maestro comando $ heroku push origin