Cómo recuperar el acceso a tu repositorio de GitHub desde la terminal fácilmente
15 Apr, 2026 • 5 min de lectura
A todos nos ha pasado: estás en medio de un flujo de trabajo espectacular, haces tu commit, te dispones a hacer un git push a tu repositorio privado y, de repente, ¡zas! El token de acceso o la contraseña ha caducado, y GitHub te deniega el acceso. Hace unos años, tocaba ir a los ajustes de GitHub, generar un Personal Access Token (PAT) interminable, copiarlo con cuidado y meterlo en la consola a mano. Un dolor.
Por suerte, ahora contamos con la línea de comandos oficial de GitHub (gh cli), y recuperar tu acceso es cuestión de segundos.
El comando salvavidas
Si has perdido el acceso a tu repositorio remoto, simplemente abre tu terminal (en mi caso, dentro del propio directorio del proyecto) y teclea este comando:
gh auth login -h github.com -p https -w
¿Qué hace exactamente este comando?
En lugar de pedirte tokens crípticos, este comando inicia un flujo amigable:
-h github.com: Especifica el host al que nos queremos conectar (en lugar de una instancia Enterprise).-p https: Establecemos el protocolo por defecto a HTTPS para nuestras conexiones Git.-w: ¡La verdadera magia! Le indica al CLI que queremos autenticarnos usando el navegador web (Web browser).
Al ejecutarlo, la terminal te proporcionará un Código de un único uso (One-time code) y te pedirá que presiones Enter. Al hacerlo, se abrirá tu navegador por defecto directamente en la página de GitHub.
Y aquí viene lo mejor: como probablemente ya tengas la sesión iniciada en tu navegador, solo tendrás que pegar ese pequeño código, confirmar el acceso, ¡y listo! Magia pura.
A continuación puedes ver cómo se ve el proceso en la terminal:

Behind the Scenes: ¿Cómo funciona esto técnicamente? (OAuth Device Flow)
Quizá te preguntes: “¿Cómo sabe exactamente la terminal que yo, a través del navegador, he validado la sesión?”
La respuesta es el OAuth 2.0 Device Authorization Grant (Flujo de Dispositivos de OAuth). Este es un estándar de seguridad diseñado precisamente para dispositivos que no tienen una interfaz rica o en los que no es seguro introducir una contraseña directamente (como una terminal, una Smart TV o un microcontrolador).
Aquí tienes el diagrama de flujo que explica lo que pasa entre bambalinas:
+------------+ +-------------+
| |--(1)- Demanda autorización -> | |
| Terminal | | Auth Server |
| (gh cli) |<-(2)-- User Code e URL ------ | (GitHub) |
+------------+ +-------------+
|
(3) Pulsa Enter para abrir el navegador
|
v
+------------+ +-------------+
| | | |
| Navegador |--(4)-- Usuario se loguea y -> | Auth Server |
| (Web) | aprueba el código | (GitHub) |
+------------+ +-------------+
+------------+ +-------------+
| Terminal |--(5)-- Polling (consulta) --> | Auth Server |
| (gh cli) |<-(6)-- Access Token final --- | (GitHub) |
+------------+ +-------------+
Paso a paso:
- La Terminal pide permiso: Al ejecutar
gh auth login, la CLI contacta a GitHub y le dice: “Oye, necesito acceder, y soy una terminal”. - GitHub devuelve el reto: El servidor de GitHub responde con una URL de verificación (ej.
https://github.com/login/device) y un código de usuario único (el que copiaste). - Se abre la interfaz gráfica: Como la terminal no puede renderizar la página de login de forma amigable, abre Firefox o Chrome.
- Validación Segura: Introduces el código en la web y autorizas desde tu sesión ya iniciada. La seguridad radica en que GitHub sabe que el usuario “humano” está dando el visto bueno al código generado.
- Polling constante: Mientras tú hacías todo eso en el navegador, la terminal no estaba dormida. Estaba en un bucle preguntando a GitHub por detrás: “¿Ya ha validado el código? ¿Y ahora? ¿Y ahora?”.
- Token concedido: Cuando firmas en la web, GitHub cambia el estado de esa petición a “Aprobado”. La próxima vez que la terminal pregunte (en fracción de segundos), GitHub le entregará un Access Token invisible que se guardará de forma segura en tus credenciales del sistema, reestableciendo tu acceso Git.
¡Y así de fácil vuelve todo a la normalidad! Nada supera la comodidad de la CLI combinada con la seguridad de tu sesión web habitual.
Te podría interesar
-
Tailscale: El superpoder invisible para la infraestructura de tu E-Commerce
En el mundo del comercio electrónico (y de Becommerce en particular), la seguridad ya no es una opción, es la base de todo. Ya sea...
-
Arquitectura para un CMS Gratuito en Cloudflare (Estilo WordPress)
¿Te imaginas tener tu propio CMS (sistema de gestión de contenidos) parecido a WordPress, pero sin tener que pagar absolutamente nada por alojamiento web mensual,...
-
Seguridad desde el Diseño: El doble filo de los frameworks minimalistas
Cuando hablamos de Seguridad desde el Diseño (Security by Design), nos referimos a la práctica fundamental de integrar la seguridad en la arquitectura de nuestra...
-
Factura Electrónica y VeriFactu en España: La Guía Definitiva (2026)
Si gestionas un negocio o eres autónomo en España, llevas años oyendo hablar de la Ley Crea y Crece y la temida “Factura Electrónica Obligatoria”....
-
El laberinto de las redirecciones en Cloudflare Pages y Jekyll: Solución definitiva
Al migrar un blog a Cloudflare Pages con un generador de sitios estáticos como Jekyll, uno de los primeros retos técnicos es la gestión de...