Translate

jueves, 16 de febrero de 2017

Configurar Github para usarlo con SSH en Linux

Si usas Git y Github y no quieres estar introduciendo tu username y password cada vez que haces un push porque lo tienes configurado con HTTPS, lo mejor es que configures SSH, algunos IDEs, como Visual Studio, lo hacen de manera automática, en Linux es bastante sencillo, incluso en la página de Github te dicen como, sin embargo, para mi la mejor forma de aprender bien algo es intentar explicarlo 😃.

1- Generar una SSH Key
Lo primero es abrir una terminal, presiona ctrl+alt+t y generamos una Key SSH usando tus credenciales de Github, con el siguiente comando:
ssh-keygen -t rsa -b 4096 -C "tu_email_de_registro_en_github@email.com"
Luego sigues los pasos que te indican, ese comando genera un archivo que contiene tu configuración SSH usando el algoritmo RSA con un tamaño de clave de 4096 bits. Tu clave por defecto se almacena en ~/.ssh/id_rsa.pub

2- Añadir tu SSH Key a ssh-agent
Lo siguiente es añadir tu clave SSH a ssh-agent
ssh-add ~/.ssh/id_rsa
(Opcional) Verificamos si se añadió con:
ssh-add -L
3- Añadir tu SSH Key en Github
Por último abrimos el archivo que acabamos de crear, se encuentra en: ~/.ssh/id_rsa 
copiamos todo el contenido del archivo. En Github Nos vamos a settings / SSH and GPG Keys o haces clic aquí: https://github.com/settings/keys



Colocamos un nombre en Title y pegamos la clave en Key. Guardamos y listo!

Podemos probar si todo salió bien tratándonos de conectar a Github con:
ssh -T git@github.com
Si todo va bien deberías ver algo parecido a:

Nota: Si teníamos un repositorio configurado con HTTPS, debemos actualizar su origin a SSH, por ejemplo, mi repositorio en Github estaba configurado para HTTPS esto lo podemos ver con el comando:
git remote show origin

En este ejemplo el origin está configurado para HTTPS, así que lo cambiamos a SSH con:
git remote set-url origin git@github.com:usuario/repositorio.git
La url del repositorio la podemos ver en la página del repositorio en Github, hay un botón verde que dice Clone or download.



Referencias

https://help.github.com/articles/connecting-to-github-with-ssh/

No hay comentarios:

Publicar un comentario