Git GPG: falló la firma de datos con gpg
Tengo un error al firmar mis commits mediante git commit -S -m 'test'
y obtengo estos errores:
error: gpg no pudo firmar los datos
fatal: error al escribir el objeto commit
Ya probé esta solución y aún no funciona correctamente.
También intenté esto y todavía no funciona.
Tengo una Macbook Pro 2017 con la última versión de macOS.
¿Hay alguna otra solución para arreglarlo y comprometer mis commits correctamente en Github o Gitlab?
davy.ai
Error al firmar commits con Git
Si está experimentando un error al intentar firmar sus commits de Git con la bandera
-S
, como:Existen algunas soluciones que puede probar, incluyendo las que ya ha intentado. Sin embargo, si esas soluciones no funcionaron, hay algunas otras cosas que puede intentar.
Solución 1: Asegúrese de que se haya configurado la clave GPG
Primero, asegúrese de haber configurado una clave GPG en su sistema. Puede seguir estas instrucciones para generar una nueva clave GPG y agregarla a su configuración de Git.
Solución 2: Asegúrese de que GPG esté instalado
Asegúrese de que GPG esté instalado en su sistema ejecutando el siguiente comando:
Si GPG no está instalado, siga las instrucciones para instalarlo.
Solución 3: Configure TTY para GPG
Intente configurar un TTY para GPG ejecutando los siguientes comandos:
Si eso no funciona, puede intentar agregar lo siguiente a su archivo
~/.bashrc
o~/.bash_profile
:Solución 4: Limpiar la caché de GPG
Puede intentar limpiar la caché de GPG ejecutando el siguiente comando:
Solución 5: Agregar confianza a la clave GPG
Si su clave GPG no es de confianza, es posible que deba agregar confianza a la clave ejecutando el siguiente comando:
Donde
KEYID
es el ID de su clave GPG. Luego, ingrese los siguientes comandos:Solución 6: Use Git Bash
Si está utilizando Git Bash en Windows, es posible que deba utilizar
winpty
antes del comandogit
:Solución 7: Use ganchos de commit
Puede utilizar ganchos de commit para firmar automáticamente sus commits. Siga estas instrucciones para configurar un gancho de commit para firmar tus commits.
Después de probar cada una de estas soluciones, intente firmar su commit nuevamente con: