Skip to content

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

  1. Genera una Nueva clave GPG:

    En la Terminal, escribe y ejecuta:

    gpg --full-generate-key

    Sigue las instrucciones en pantalla:

    1. De tipo de clave selecciona RSA para la clave, presiona Enter.
    2. Tamaño de la clave selecciona o escribe 4096.
    3. Duración de la clave selecciona que la clave nunca expire.
    4. Confirma los detalles presionando y.
    5. Ingresa tu Nombre_Completo y correo electrónico, no añadas ningún comentario.
    6. Establece una contraseña segura y recuérdala.
  2. 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

  1. Lista tus claves GPG y encuentra el ID de tu nueva clave:

    Escribe y ejecuta:

    gpg --list-secret-keys --keyid-format=long

    y anota el ID de la clave que sigue a rsa4096/ sin incluirlo.

  2. Exporta tu clave Pública GPG:

    Escribe y ejecuta (Reemplaza CLAVE_RECIEN_COPIADA con tu ID de clave GPG):

    gpg --armor --export CLAVE_RECIEN_COPIADA

    y 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.

  3. 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.)

  4. 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_Completo
    git config --global user.email MAIL
  5. 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