Comprueba el remoto y el protocolo
Ejecuta el comando dentro del repositorio. Un remoto HTTPS utiliza credenciales HTTPS; corregir una clave SSH no cambia esa conexión. Una URL SSH de GitHub suele empezar por git@github.com:.
git remote -vEn github.com el usuario SSH es git, no tu nombre de cuenta. Revisa el propietario y el nombre del repositorio antes de cambiar el remoto. Cambiar el protocolo puede ocultar el problema original.
Comprueba las claves del agente
Lista las identidades disponibles en el agente SSH de la sesión. No tener identidades es distinto de no poder contactar con el agente. La configuración depende del sistema operativo y del terminal.
ssh-add -lSi tu clave existente no está cargada, añade su ruta real, por ejemplo ssh-add ~/.ssh/id_ed25519. Registra la clave pública .pub correspondiente en la cuenta GitHub correcta. Conserva la clave privada en tu dispositivo; no la pegues en un sitio web.
Prueba la autenticación con GitHub
Antes de aceptar una clave nueva del servidor, compara su huella con las huellas SSH publicadas por GitHub, enlazadas desde la guía oficial de abajo. Después ejecuta la prueba.
ssh -T git@github.comEl mensaje de éxito GitHub identifica tu cuenta e indica que no ofrece acceso shell. Esa prueba correcta suele terminar con código 1. Si sigue fallando, ssh -vT git@github.com muestra las identidades ofrecidas. Usar Git con sudo puede seleccionar las claves de otro usuario.
Distingue autenticación y acceso al repositorio
Tras una prueba SSH correcta, comprueba la lectura del repositorio. Este comando lista referencias remotas sin cambiar ramas locales.
git ls-remote originLa cuenta autenticada también necesita acceso al repositorio. Revisa la URL, la pertenencia a la organización y la autorización SSO que corresponda. Una deploy key puede estar limitada a un repositorio. Si no existe ninguna clave, sigue la configuración del proveedor sin sobrescribir una existente.