Firmar los commits
Antes de Empezar
Asegúrate de que GPG esté instalado en tu sistema.
En Windows, descarga Gpg4win desde https://gpg4win.org/download.html e instálalo siguiendo las instrucciones del instalador. (Este programa es recomendado directamente de la guía de github)
Generación de tu clave GPG
-
Genera una Nueva clave GPG:
En la Terminal, escribe y ejecuta:
gpg --full-generate-keySigue las instrucciones en pantalla:
- De tipo de clave selecciona RSA para la clave, presiona Enter.
- Tamaño de la clave selecciona o escribe
4096
. - Duración de la clave selecciona que la clave nunca expire.
- Confirma los detalles presionando
y
. - Ingresa tu
Nombre_Completo
y correo electrónico, no añadas ningún comentario. - Establece una contraseña segura y recuérdala.
-
Espera a que el proceso de generación se complete:
Cuando termine, tendrás la clave generada en tu local y podemos continuar.
Configuración de Git y GitHub
-
Lista tus claves GPG y encuentra el ID de tu nueva clave:
Escribe y ejecuta:
gpg --list-secret-keys --keyid-format=longy anota el ID de la clave que sigue a
rsa4096/
sin incluirlo. -
Exporta tu clave Pública GPG:
Escribe y ejecuta (Reemplaza
CLAVE_RECIEN_COPIADA
con tu ID de clave GPG):gpg --armor --export CLAVE_RECIEN_COPIADAy copia toda la clave desde
-----BEGIN PUBLIC KEY-----
hasta-----END PUBLIC KEY-----
.Ve a GitHub > Settings > SSH and GPG keys > Bew GPG key y pega tu clave pública GPG. Pusla Add GPG key.
-
Configura Git para usar tu clave GPG:
Escribe y ejecuta:
git config --global user.signingkey CLAVE_RECIEN_COPIADA(Sustituye
CLAVE_RECIEN_COPIADA
con tu ID de clave GPG.) -
Configura tu nombre y correo electrónico en Git:
Reemplaza
"Nombre_Completo"
y"MAIL"
con tu nombre y correo electrónico definidos con anterioridad, ejecuta los comandos:git config --global user.name Nombre_Completogit config --global user.email MAIL -
Configura Git para firmar automáticamente tus commits:
Dile a github que quieres firmar todos tus commits, escribe y ejecuta:
git config --global commit.gpgsign true
Solución de problemas
- Revisa
.gitconfig
en tu directorio home si experimentas problemas, aquí se declaran las configuraciones de git globales. - Si Git no encuentra GPG revisa la variable
gpg.program
, configura la ruta con:git config --global gpg.program ruta/a/gpg - Asegúrate de que el email de Git coincida con el email de tu clave GPG y cuenta de GitHub.
- Usa el siguiente comando para verificar firmas de commits:
git log --show-signature