Para tener acceso a mi git remoto, agrego una reference al SSH cada vez que presiono o jale:
GIT_SSH_COMMAND="ssh -i ~/.ssh/id_bit_rsa" git pull origin master
¿Hay alguna manera de que el git recuerde el SSH, así que no necesito agregarlo cada vez?
Ok, acabo de encontrar la respuesta en el manual de github .
eval "$(ssh-agent -s)"
y:
$ ssh-add -K ~/.ssh/id_bit_rsa
Podrías hacer esto:
Host github HostName github.com User git IdentityFile ~/.ssh/id_github
(reemplazando el usuario y el nombre de host según sea necesario, así como el file de identidad)
en ~/.ssh/config
A Git no le importan tus llaves SSH. Detrás de la escena invoca ssh
. Si se establece la variable de entorno GIT_SSH_COMMAND
, entonces no usa ssh
sino el contenido de la variable GIT_SSH_COMMAND
.
Una opción para hacerlo permanente es escribir:
export GIT_SSH_COMMAND="ssh -i ~/.ssh/id_bit_rsa"
en su .profile
(o .bash_profile
) pero produce más daño que bien si usa más de un host remoto.
La forma correcta de resolverlo es configurar correctamente ssh
. Edite el file ~/.ssh/config
(o ~/.ssh/config
si no existe) y colóquelo en él:
Host bitbucket.com User guy IdentityFile = ~/.ssh/id_bit_rsa
Por supuesto, reemplace bitbucket.com
con el nombre real del server que aloja su repo de Git (supuse BitBucket de la parte " bit " de su file de key) y el guy
con su nombre en el host.