signup run rails migrations learn how deploy ruby-on-rails git heroku

ruby on rails - run - git push heroku permiso maestro denegado



ruby on rails heroku (7)

Estoy siguiendo el ruby.railstutorial. Ejecuto el comando "git push heroku master" y escupe este error.

Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists.

Estoy dentro de mi aplicación Rails "/ Users / lexi87 / rails_projects / first_app". Alguna solución?


Algo de ayuda para usuarios de Windows 7 con el cliente Github Windows instalado:

A pesar de que heroku toolbelt informa que encontró mi clave pública git_hub y la subió, falló ''git push heroku master''. Después de seguir los pasos a continuación, funciona bien.

  1. Cree una carpeta .ssh debajo de su carpeta de Usuario si no existe. Si lo hace, elimine todos los archivos (esto supone que está bien comenzar de cero con las teclas ssh).

  2. En el Explorador de Windows, haga clic con el botón derecho en la carpeta .ssh y elija Git bash en el menú contextual. Esto se instala junto con el software de cliente Github Windows.

  3. En la ventana bash, ingrese ssh-keygen -t rsa -C "[email protected] " Cuando se le solicite, ingrese una frase de contraseña (no la pierda).

  4. Cierre la ventana del shell bash.

  5. Desde un indicador de cmd en la raíz de su proyecto, ingrese heroku keys:add . Esto encontrará y cargará la clave que acaba de crear desde su archivo /.ssh a Heroku.

Ahora puede ingresar git push heroku master para enviar su aplicación a Heroku. Nota: deberá agregar su clave pública ssh recién generada a su cuenta de Github cuando haya terminado.


Creé una clave con

ssh-keygen -t rsa

y usé un nombre de archivo diferente a id_rsa (en mi caso, heroku). Agregué la clave para heroku con

heroku keys:add

Al intentar impulsar mi rama principal a heroku, siempre recibí el siguiente error:

$ git push heroku master
La autenticidad del servidor ''heroku.com
(50.19.85.132) ''no se puede establecer. La huella dactilar de la llave RSA es
8b: 48: 5e: 67: 0e: c9: 16: 47: 32: 99: 87: 0c: 1f: c8: 60: bb. Estas seguro que quieres
para continuar conectando (sí / no)? sí Advertencia: agregado permanentemente
''heroku.com, 50.19.85.132'' (RSA) a la lista de hosts conocidos. Permiso
denied (publickey). fatal: no se pudo leer desde el repositorio remoto.

Por favor, asegúrese de tener los derechos de acceso correctos y existe el repositorio.

Como noté que git solo usó mi clave id_rsa desde otro ssh-access (puede verificarlo a través de su git gui: Ayuda -> Claves SSH).

Cambié el nombre de mi directorio .ssh C: / Users /% username% .ssh a .ssh.bak y copié mi clave privada y pública heroku (del directorio .ssh.bak ) a un directorio .ssh recién creado y la denominé id_rsa ( y id_rsa.pub).

Ahora empujar funcionó como se esperaba:

git push heroku master


Enfrenté el mismo problema. En mi carpeta .ssh tenía un archivo llamado ''Hosts conocidos''. Seguí intentando eliminar y crear nuevas claves ssh, pero no funcionó. Al final, simplemente eliminé todo en .ssh, incluyendo ''Hosts conocidos'' y luego creé una nueva clave rsa usando:

ssh-keygen -t rsa

luego agregué esta nueva clave a heroku usando:

heroku keys:add

a continuación, crea un nuevo repositorio heroku y empuja mi aplicación hacia él:

heroku create git push heroku master


La mejor manera de evitar tales errores es usar un par de claves público / privado y no una clave adicional para heroku. De esta forma, usted (o su sistema) no puede elegir una clave incorrecta para iniciar sesión en heroku.

Si obtiene este error, ha hecho algo mal. Visite este sitio: devcenter.heroku.com/articles/keys

Si logra este error, la mejor manera es eliminar las claves innecesarias y usar solo una.

Si necesita más de un par de claves en su sistema, puede establecer una clave para heroku. Esto se hace a través del siguiente comando:

heroku keys:add


Si está trabajando en Windows, asegúrese de usar git-bash en lugar de Powershell / Command Prompt.

Si solo quieres restablecer tus claves ssh:

  1. elimine el directorio .ssh de su usuario
  2. abrir git-bash
  3. ssh-keygen -t rsa
  4. llaves heroku: agregar

y luego podrás git push.


en OSX, estaba experimentando el mismo problema, estaba recibiendo

no such identity: /Users/me/.ssh/yourPrivateKey: No such file or directory Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists.

Traté de crear una nueva clave con ssh-keygen -t rsa y luego agregarla con las claves heroku: agregar, pero no ayudó.

Luego encontré un archivo llamado config en ~ / .ssh /, y dentro del archivo estaba:

ServerAliveInterval 300 ServerAliveCountMax 3 host heroku.com user git hostname heroku.com identityfile ~/.ssh/yourPrivateKey

Así que cambié su ClavePrivada a mi nombre de archivo de clave privada ( id_rsa por defecto) ay funcionó :)


ssh-keygen -t rsa

Arriba es opcional, ya que también puede vincular a una clave existente. Heroku le pedirá que seleccione la clave en el siguiente paso.

heroku keys:add

Agregue su clave recién creada o una existente. Si aún te encuentras con el problema, lo más probable es que necesites agregar la clave a la lista de teclas ssh de tu máquina realizando lo siguiente:

ssh-add ~/.ssh/name_of_your_rsa

y confirma que tu ssh ha sido agregado

ssh-add -l

Esto debería darte acceso para presionar al repositorio remoto de Heroku.