Skip to content

Latest commit

 

History

History
97 lines (58 loc) · 4.09 KB

File metadata and controls

97 lines (58 loc) · 4.09 KB

Curso: Dominando Git y la Conexión con la Nube

Introducción

En la guía anterior vimos que las contraseñas de GitHub ya no funcionan para autenticarse desde la terminal. La alternativa más sencilla por HTTPS son los Personal Access Tokens, o PAT. Son básicamente contraseñas técnicas que genera GitHub, con permisos y caducidad que tú controlas.

Vamos a ver cómo generarlo y cómo usarlo.

¿Qué ventajas tiene un token frente a una contraseña?

Antes de ponernos manos a la obra, merece la pena entender por qué esto es mejor:

  • Permisos limitados: puedes darle acceso solo a repositorios, sin que toque el resto de tu cuenta.
  • Caducidad: se puede configurar para que expire automáticamente.
  • Revocable: si alguien te lo roba o lo pierdes, lo borras y generas uno nuevo sin tocar tu contraseña principal.

Generando el token en GitHub

Entra en github.com, haz clic en tu avatar arriba a la derecha y selecciona Settings.

Menú de usuario en GitHub

Baja hasta el final del menú lateral izquierdo y haz clic en Developer settings.

Developer settings en el menú lateral

En el menú izquierdo selecciona Personal access tokens > Tokens (classic).

Sección Personal access tokens

Haz clic en Generate new token > Generate new token (classic).

Botón Generate new token

Rellena los campos:

  • Note: un nombre descriptivo, por ejemplo curso-git.
  • Expiration: el tiempo que quieres que dure. Para el curso puedes poner 30 días.
  • Scopes: marca repo (da acceso completo a repositorios públicos y privados).

Configuración del token: nombre, expiración y scopes

Haz clic en Generate token. GitHub te mostrará el token una sola vez. Cópialo ahora porque no volverás a verlo.

Token generado, copiar antes de salir

Limpiando las credenciales anteriores

Antes de probarlo, tenemos que borrar las credenciales que puedas tener guardadas de GitHub. Si no lo hacemos, el sistema usará las antiguas y no te pedirá el token.

Abre el Administrador de credenciales de Windows, busca cualquier entrada relacionada con GitHub y elimínala.

Administrador de credenciales de Windows

Eliminar credenciales de GitHub

Mac: abre la aplicación Acceso a Llaveros, busca github.com y elimina la entrada que aparezca.

Linux: si tienes un gestor de credenciales configurado, búscalo en la configuración del sistema. Si usas el almacén básico de Git, abre el fichero ~/.git-credentials y borra la línea que contenga github.com.

Usando el token para hacer push

Partimos del repositorio mi-proyecto de la guía anterior, que ya tiene el remote configurado. Hacemos push:

git push origin main

Se abrirá un diálogo para introducir las credenciales.

Diálogo de credenciales

Introducimos el token que acabamos de generar y hacemos clic en Sign in. Si todo está bien, veremos el mensaje de éxito en la terminal:

Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 16 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 289 bytes | 289.00 KiB/s, done.
Total 3 (delta 1), reused 0 (delta 0), pack-reused 0 (from 0)
remote: Resolving deltas: 100% (1/1), completed with 1 local object.
To https://github.com/tu-usuario/mi-proyecto.git
   871fcff..7013a5f  main -> main

El repositorio local ya está sincronizado con GitHub.


Este método funciona y es sencillo, pero tiene una pega: el token caduca y tienes que renovarlo. Si buscas algo más cómodo y profesional, la siguiente guía es para ti: verás cómo conectar con SSH, que una vez configurado no te vuelve a pedir nada.