una que publica mac llave keygen generar generador clave git ssh bitbucket

git - que - ssh llave publica



Git en Bitbucket: siempre me pidieron una contraseña, incluso después de subir mi clave pública SSH (8)

¿Estás seguro de que lo clonaste usando la url de ssh?

La URL de origen dice url = https://[email protected]/Nicolas_Raoul/therepo.git así que si está usando https, pedirá una contraseña independientemente de sus claves ssh.

~/.ssh/id_rsa.pub mi ~/.ssh/id_rsa.pub en las claves SSH de Bitbucket como se explained , pero Git todavía me pide mi contraseña en cada operación (como git pull ). ¿Me he perdido algo?

Es un repositorio privado (fork del repositorio privado de otra persona) y lo cloné así:

git clone [email protected]:Nicolas_Raoul/therepo.git

Aquí está mi .git/config local:

[core] repositoryformatversion = 0 filemode = true bare = false logallrefupdates = true [remote "origin"] fetch = +refs/heads/*:refs/remotes/origin/* url = https://[email protected]/Nicolas_Raoul/therepo.git [branch "master"] remote = origin merge = refs/heads/master

En el mismo entorno con la misma clave pública, Git en Github funciona bien.
.ssh es rwx------ , .ssh/id_rsa es -rw------- , .ssh/id_rsa.pub es -rw-r--r--


Como se explica explained , si clona con la url de SSH , no necesita ingresar el nombre de usuario / contraseña cada vez que presiona / jala. Verifique la answer anterior por @manojlds

Pero si quiere clonar con HTTPS y quiere evitar ingresar el nombre de usuario / contraseña cada vez, puede almacenar las credenciales en la memoria caché con el siguiente comando:

git config --global credential.helper ''cache --timeout 3600''

donde 3600 (segundos) significa 1 hora, puede cambiarlo según sus necesidades.


En el caso de solicitud HTTP, también es posible y alternativamente pegar las credenciales (con contraseña) directamente en la url:

http://username:[email protected]/...

Esto ahorrará el dolor de dar tus credenciales cada vez más. Simple modifica tu .git / config (la url).


Es posible que deba verificar dos veces su archivo de identidades SSH. Puede estar guiando BitBucket para mirar una clave privada diferente / incorrecta a la clave pública equivalente que ha guardado en BitBucket.

Compruébelo con tail ~/.ssh/config - verá algo similar a:

Host bitbucket.org HostName bitbucket.org IdentityFile ~/.ssh/personal-bitbucket-ssh-key

Recuerde que agregar identidades adicionales (como trabajo y hogar) se puede hacer con el comando ssh-add , por ejemplo:

ssh-keygen -t rsa -C "companyName" -f "companyName" ssh-add ~/.ssh/companyName

Una vez que haya confirmado qué clave privada se está buscando localmente, puede tomar su equivalente público, en este caso:

cat ~/.ssh/personal-bitbucket-ssh-key.pub | pbcopy

Y pegue ese cifrado en BitBucket. Tu git empujará ahora (siempre que estés usando el clon SSH como se indicó en las respuestas antes mencionadas) sin contraseña, ya que tu dispositivo es un amigable reconocido.

Espero que esto ayude a aclararlo para alguien.


Hola Googlers del futuro.

En MacOS> = High Sierra, la clave SSH ya no se guarda en KeyChain por razones .

El uso de ssh-add -K ya no sobrevive también se reinicia.

Aquí hay 3 soluciones posibles .

He usado el primer método con éxito. ~/.ssh un archivo llamado config en ~/.ssh :

Host * AddKeysToAgent yes UseKeychain yes IdentityFile ~/.ssh/id_rsa


Lo siguiente asume el acceso de línea de comandos a través de iTerm / Terminal a bitbucket.

Para MacOS Sierra 10.12.5, mi sistema manifestó un problema equivalente, pidiendo mi frase de contraseña SSH en cada conexión a bitbucket.

El problema tiene que ver con las actualizaciones de OpenSSH en macOS 10.12.2, que se describen aquí en la Nota técnica TN2449 .

Es muy posible que desee adaptar su solución, pero lo siguiente funcionará cuando se agregue a su archivo ~ / .ssh / config:

Host * UseKeychain yes

Para obtener más información sobre las configuraciones de ssh, eche un vistazo a las páginas man para ssh_config:

% man ssh_config

Otra cosa: aquí hay un buen informe sobre el superusuario que analiza este problema y varias soluciones según sus necesidades y configuración.


Su ya respondida arriba. Resumiré los pasos para verificar arriba.

ejecuta git remote -v en el directorio del proyecto. Si el resultado muestra url remota que comienza con https://abc entonces puede necesitar un nombre de usuario con contraseña cada vez.

Entonces, para cambiar la URL remota, ejecute git remote set-url origin {ssh remote url address starts with mostly [email protected]:} .

Ahora ejecute git remote -v para verificar la URL remota modificada.

Consulte: https://help.github.com/articles/changing-a-remote-s-url/