Tester les commits non signés
Dans cette étape, nous allons créer un autre commit sans signature et observer comment Git le gère lorsque nous utilisons les commandes de vérification que nous avons apprises dans les étapes précédentes. Cela renforcera votre compréhension de la façon dont Git identifie les commits non signés.
Tout d'abord, assurez-vous d'être dans le répertoire de votre projet :
cd ~/project/my-time-machine
Ajoutons une autre ligne à notre fichier message.txt
:
echo "This is a second message." >> message.txt
L'opérateur >>
ajoute le texte au fichier existant. Maintenant, vérifions le statut :
git status
Vous devriez voir que message.txt
a été modifié :
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")
Maintenant, préparons les modifications et créons un nouveau commit. Nous ne signerons pas ce commit.
git add message.txt
git commit -m "Add a second message"
Vous verrez une sortie confirmant le nouveau commit :
[master a1b2c3d] Add a second message
1 file changed, 1 insertion(+)
Maintenant que nous avons un deuxième commit non signé, utilisons de nouveau git log --show-signature
pour voir l'historique :
git log --show-signature
Vous verrez les deux commits dans le journal. Aucun ne montrera d'informations de signature car nous n'avons pas encore configuré la signature.
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
Enfin, utilisons git verify-commit
sur le nouveau commit. Obtenez le hash court du dernier commit en utilisant git log --oneline
et remplacez YOUR_NEW_COMMIT_HASH
ci-dessous :
git log --oneline
a1b2c3d (HEAD -> master) Add a second message
u1v2w3x Send a message to the future
Maintenant, vérifions le nouveau commit :
git verify-commit YOUR_NEW_COMMIT_HASH
Encore une fois, la sortie montrera les détails du commit mais aucun statut de vérification de signature, confirmant que ce commit est également non signé.
Cette étape démontre que, par défaut, les commits Git ne sont pas signés. Pour ajouter une couche de sécurité et de confiance, vous devez explicitement configurer Git pour signer vos commits, ce qui est un sujet plus avancé que nous ne couvrirons pas dans ce laboratoire introductif. Cependant, comprendre comment identifier les commits non signés en utilisant git log --show-signature
et git verify-commit
est la première étape pour travailler avec des commits signés.