2010-08-28 27 views
17

Acabo de comprar una computadora nueva y estoy intentando clonar mi proyecto heroku en ella.git clone heroku ssh permiso denegado

Esto es lo que he hecho hasta ahora. No incluí el rastreo, pero todo se guardó en el lugar correcto y las funciones se ejecutaron sin errores.

>> sudo ssh-keygen 
>> heroku keys:add 
>> sudo git clone -o heroku [email protected]:myapp.git 

Initialized empty Git repository in /Users/macuser/Sites/shwagr/shwagr/.git/ 
Permission denied (publickey). 

Entonces oí acerca de hacerlo a través de ssh fiesta ..

>ssh-agent bash 
>ssh-add ~/.ssh 

Permissions 0777 for '/Users/macuser/.ssh' are too open. 
It is recommended that your private key files are NOT accessible by others. 
This private key will be ignored. 

¿Qué? Ok papá ...

>>sudo chmod 700 ~/.ssh 
>>ssh-agent bash 
>>ssh-add ~/.ssh 
Enter passphrase for /Users/macuser/.ssh: 
Bad passphrase, try again for /Users/macuser/.ssh: 
Bad passphrase, try again for /Users/macuser/.ssh: 
Bad passphrase, try again for /Users/macuser/.ssh: 
Bad passphrase, try again for /Users/macuser/.ssh: 
Bad passphrase, try again for /Users/macuser/.ssh: 
Bad passphrase, try again for /Users/macuser/.ssh: 

No estoy seguro de cuál es la contraseña aquí, pero seguro que no fui yo quien configuró esta. Si simplemente presiono return/enter, sale, pero eso no me da la impresión de que funcionó. Y, en consecuencia, todavía no me permite clonar el repositorio.

¿Alguna idea?

ACTUALIZACIÓN entré en mi archivo ~/.ssh y realizó ssh-keygen -t rsa e hice una nueva clave llamada love. Entonces I heroku keys:add love.pub con éxito.

Luego fui a git clone ..

sudo git clone -o heroku [email protected]:mysite.git 

Initialized empty Git repository in /Users/macuser/Sites/shwagr/shwagr/.git/ 
Permission denied (publickey). 

ACTUALIZACIÓN 2

He eliminado ~/.ssh y recreados sin sudo. Luego eliminé todas las claves que había creado hoy fuera de heroku y reinicié el proceso.

Mismo error.

Actualización 3

>>heroku keys 

    No Keys for this computer. 

>>sudo heroku keys 

    No Keys for this computer 

>>heroku keys:add 

>>heroku keys 

ssh-rsa AAAA...J67lw== [email protected] 

compararon estas llaves de las llaves: Son idénticos. : D

Permiso denegado.

Intento 4

teclas heroku: claro rm -rf ~/.ssh mkdir ~/.ssh cd ~/.ssh keygen -t rsa ssh- teclas heroku : añadir cd/Users/MacUser/Sitios/ sudo git clone -o heroku [email protected]: shwagr.git

Falló.

fatal: El extremo remoto colgó inesperadamente

gran actualización

acabo de enterar que repositorio git está realmente vacía.Y es solo un enlace simbólico (cuando le adjunta un dominio real, aún usa el antiguo como el repositorio real). Entonces, cuando saqué uno de los nombres predeterminados de Heroku, como smooth-buttery-back-52.git, arrancó y funcionó, y en realidad era mi repositorio.

+0

> Actualización 2 <: Así que utilizó 'teclas heroku: clear' o howd ir sobre la ¿eso? – prodigitalson

+0

No quería hacer eso porque hay claves para los usuarios involucrados en el proyecto sobre eso. Acabo de eliminar los que pertenecen a esta computadora. – Trip

+0

@trip: entonces usted hizo 'heroku keys: remove youruser @ yourhost'? ¿Cuál es la salida de 'heroku keys' Y' sudo heroku keys'? – prodigitalson

Respuesta

6
>> sudo ssh-keygen 

NO. Suelta el sudo. Eso creará claves para el usuario raíz, no para su usuario. Bueno, a menos, por supuesto, por alguna extraña razón, quiere usar root. Pero luego debe agregar todos los comandos relacionados que van a usar esta clave con sudo.

+0

haga una copia de seguridad de su configuración de ssh: 'mv ~/.ssh ~/ssh.bak' (utilice sudo si es necesario, ya que puede haberse bloqueado inadvertidamente). luego 'ssh-keygen' nuevamente. si tiene algo especial configurado en su 'ssh.back/config', cópielo de nuevo al nuevo generado. – prodigitalson

+2

ya que acaba de comprar una computadora nueva. restaurarlo y no usar sudo, alguna vez, a menos que realmente tenga que hacerlo. usa rvm y homebrew y mantente local :) estás oficialmente en el infierno de los permisos. –

+0

En segundo lugar, lo que dice Jed, aunque no creo que deba abandonar sudo, debe aprender lo que significa y las implicaciones y luego usarlo cuando sea necesario. También recomiendo macports sobre homebrew, pero es realmente una cosa de preferencia personal. – prodigitalson

1

hizo una clave para su cuenta sudo, pero no para su cuenta de usuario y no lo hizo sudo heroku keys:add por lo que cargó la clave de usuario local, no la clave sudo, supongo. ¿Por qué querrías que tu aplicación local en tu directorio personal tuviese permisos de sudo de todos modos? Yo probablemente x el sudo y sólo lo hacen como usuario siguiendo este tutorial: http://docs.heroku.com/keys

+0

no me deja >> amor abierto fallido: Permiso denegado. Error al guardar la clave: amor. – Trip

+0

@Trip: vea mi comentario sobre mi respuesta sobre cómo solucionarlo ... lo ha corrompido en este punto y necesita enviarlo desde el espacio ... es la única forma de estar seguro. – prodigitalson

+0

lo hice y actualicé mi respuesta. el mismo problema. ¿Hay un purgatorio de permisos? – Trip

11

Seguí los pasos provistos por heroku y funcionó. Una vez que haya generado las claves ssh (no importa lo que se llama los archivos), acaba de hacer lo siguiente:

> heroku login 
> heroku keys:add 

La primera declaración le pide su heroku ID de usuario/contraseña. Una vez que esté autenticado, ejecutar el segundo comando selecciona todas las claves públicas y lo envía a heroku.com. ¡Después de eso puedes ejecutar git clone y funcionará como un hechizo!

+0

Bueno, en realidad "heroku login" funcionó para mí. Sin agregar claves nuevamente Gracias. – shadowhorst

2

Si ya terminado

heroku keys:add 

y sigue recibiendo el error, por favor intenta

ssh-add