Probar commits no firmados
En este paso, crearemos otro commit sin firma y observaremos cómo Git lo maneja cuando utilizamos los comandos de verificación que aprendimos en los pasos anteriores. Esto reforzará tu comprensión de cómo Git identifica los commits no firmados.
Primero, asegúrate de estar en el directorio de tu proyecto:
cd ~/project/my-time-machine
Agreguemos otra línea a nuestro archivo message.txt
:
echo "This is a second message." >> message.txt
El operador >>
agrega el texto al archivo existente. Ahora, veamos el estado:
git status
Deberías ver que message.txt
ha sido modificado:
On branch master
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: message.txt
no changes added to commit (use "git add" and/or "git commit -a")
Ahora, preparemos los cambios y creemos un nuevo commit. No firmaremos este commit.
git add message.txt
git commit -m "Add a second message"
Verás una salida que confirma el nuevo commit:
[master a1b2c3d] Add a second message
1 file changed, 1 insertion(+)
Ahora que tenemos un segundo commit no firmado, usemos git log --show-signature
de nuevo para ver la historia:
git log --show-signature
Verás ambos commits en el registro. Ninguno mostrará información de firma porque aún no hemos configurado la firma.
commit a1b2c3d4e5f6g7h8i9j0k1l2m3n4o5p6q7r8s9 (HEAD -> master)
Author: Jane Doe <[email protected]>
Date: Mon Aug 7 10:00:00 2023 +0000
Add a second message
commit u1v2w3x4y5z6a7b8c9d0e1f2g3h4i5j6k7l8m9n0
Author: Jane Doe <[email protected]>
Date: Mon Aug 7 10:00:00 2023 +0000
Send a message to the future
Finalmente, usemos git verify-commit
en el nuevo commit. Obtén el hash corto del último commit usando git log --oneline
y reemplaza YOUR_NEW_COMMIT_HASH
a continuación:
git log --oneline
a1b2c3d (HEAD -> master) Add a second message
u1v2w3x Send a message to the future
Ahora verifica el nuevo commit:
git verify-commit YOUR_NEW_COMMIT_HASH
Nuevamente, la salida mostrará los detalles del commit pero no el estado de verificación de la firma, lo que confirma que este commit también no está firmado.
Este paso demuestra que, por defecto, los commits de Git no están firmados. Para agregar una capa de seguridad y confianza, debes configurar explícitamente Git para firmar tus commits, lo cual es un tema más avanzado que no cubriremos en este laboratorio introductorio. Sin embargo, entender cómo identificar los commits no firmados usando git log --show-signature
y git verify-commit
es el primer paso para trabajar con commits firmados.