git notes

Inspection et comparaison

Attacher des notes aux commits sans les modifier


La commande 'git notes' attache du texte à un commit — une revue, un résultat de test, une date de déploiement — sans toucher au commit lui-même, dont le hash reste identique. Les notes sont stockées à part (dans refs/notes/commits) et git log les affiche sous le message du commit. Elles ne sont ni poussées ni récupérées par défaut.

Synopsis

git notes [list [<object>]]
git notes add [-f] [-m <msg>] [<object>]
git notes append [-m <msg>] [<object>]
git notes show [<object>]
git notes remove [<object>...]
[ ] facultatif| ou<arg> valeur à remplacer... répétable--flag option

Options

Cliquez sur une option pour la déplier

Débutant (4)

Ajouter du texte à la note existante (ou en créer une).

RecommandéAjouter une information sans perdre la note existante

Exemple

git notes append -m "Tests pass"

Afficher la note d’un commit (HEAD par défaut).

RecommandéLire la note d’un commit

Exemple

git notes show HEAD~1

Lister chaque note : l’identifiant de la note et le commit auquel elle appartient.

Si nécessaireTrouver chaque commit qui a une note

Exemple

git notes list

Supprimer la note d’un commit.

Si nécessaireSupprimer une note périmée

Exemple

git notes remove

Choisir la bonne option

Ajouter une information à un commit

Note ou amend ?

CommandeLe hash change ?Sûr après un push ?
git commit --amendOuiNo
git notes addNoOui

Exemples

Ajouter une note

git notes add -m "Reviewed by Sam"

Attacher une note à HEAD.


Annoter un commit plus ancien

git notes add -m "Deployed" a1b2c3d

N’importe quel commit peut recevoir une note.


Partager les notes

git push origin refs/notes/commits

Les notes ne sont poussées que si vous le demandez.

Exemples de workflows

1
git notes add -m "Reviewed by Sam" a1b2c3d

Attacher la note

2
git push origin refs/notes/commits

La partager avec l’équipe

Dépannage

error: Cannot add notes. Found existing notes

Cause : Le commit a déjà une note

Utilisez git notes append, ou add -f pour la remplacer

Mes collègues ne voient pas mes notes

Cause : Les notes ne sont pas poussées par défaut

git push origin refs/notes/*, et récupérez-les avec git fetch origin refs/notes/*:refs/notes/*

Astuces et pièges

Bonnes pratiques

  • ✓Utilisez les notes pour les informations qui viennent après le commit (revues, résultats de CI).

Erreurs fréquentes

  • ✗Amender un commit poussé juste pour ajouter une information — une note garde le hash.
  • ✗S’attendre à ce que les notes partent avec git push — poussez refs/notes/* explicitement.

FAQ

A:

Non. Elles sont stockées à côté ; le commit et son hash restent identiques.