Crear llave SSH y usar en GitHub

Crear llave SSH

Para crear la llave SSH deberíamos que estar ubicado en el directorio home (aunque no es obligatorio) desde la terminal, estando ahí ejecutamos el comando:

ssh-keygen -t rsa -b 4096 -C "email"

Donde:
-t es para especificar el algoritmo para crear la llave que seria rsa.
-b especifica la complejidad de la llave que seria 4096.
-C (mayúscula) para especificar a qué correo electrónico va a estar conectada la llave.
se debe reemplazar email por el correo electrónico entre comillas, presionar enter, esto genera la llave y a modo opcional es posible agregar una contraseña a esa llave, al final genera un random art como confirmación.

Comprobar SSH agent

Hay que evaluar o comprobar que el ssh agent este iniciado, si todo esta bien obtendremos un pid (process id).

eval "$(ssh-agent -s)"

Crear archivo config

Para crear el archivo, hay que ingresar a la carpeta .ssh:

cd ~/.ssh

Una vez ubicados en el directorio .ssh se debe crear el archivo config, se puede hacer desde vim, visual studio code o cualquier otro editor de texto:

vim config (para crearlo con vim)
code config (para crearlo con Visual Studio Code)

desde el editor de texto creamos el archivo de la siguiente manera:

Host *
    AddKeyToAgent yes
    UserKeychain yes
    IdentifyFile ~/.ssh/id_rsa

Agregar llave SSH

para agregar la llave basta con ejecutar el siguiente comando:

ssh-add -K ~/.ssh/id_rsa

El -K (mayúscula) es porque macOS usa Keychain como un administrador de contraseñas del S.O para compartir en iCloud.
Si devuelve un error es posible usar el mismo comando eliminando el parametro “-K”

Agregar Llave publica a GitHub

Se debe copiar la llave publica ubicada en el directorio .ssh, una vez hecho eso desde GitHub, ingresamos al perfil > settings > SSH and GPG Keys.
Si no hay ninguna llave creada, debemos crear una: New SSH Key

Entramos al repositorio, y cambiamos de HTTP a SSH desde el boton Code, o clone or download, y copiamos el link cuando cambiemos a SSH.

Desde la carpeta del repositorio loca, cambiamos la URL, con el siguiente comando:

git remote -v (para ver los origenes remotos con detalle)
git remote set-url origin <URL> (cambiar la URL del repositorio origin)

con eso finaliza el proceso.