Da Anonimo (non verificato) , 29 Aprile 2026

Sinossi

git notes add [-m <msg>] [<commit>]
git notes show [<commit>]
git notes append [-m <msg>] [<commit>]
git notes remove [<commit>]

Descrizione

Il comando git notes attacca metadati aggiuntivi ai commit senza riscriverli. Le note sono memorizzate nel proprio namespace di ref (refs/notes/commits per default) e sono visualizzate accanto ai commit in git log. Casi d'uso includono commenti di code review, stato build, link a ticket o sign-off aggiunti dopo il fatto.

Le note non vengono pushate per default — devi esplicitamente git push origin refs/notes/*. Team diversi usano namespace diversi; i sistemi CI spesso scrivono a refs/notes/ci mentre i revisori usano refs/notes/review.

Nell'uso quotidiano, git notes si integra con alias e CI.

Capire il modello dati di Git aiuta a prevedere i risultati.

Opzioni comuni

SottocomandoDescrizione
addAttacca una nuova nota a un commit.
appendAggiunge a una nota esistente.
editApre un editor sulla nota.
showStampa la nota.
removeCancella la nota.
listElenca commit che hanno note.
--ref <ref>Usa un namespace di note diverso.

Esempi

git notes add -m "Reviewed by Alice" abc123
# Attacca una nota di review

git log --show-notes
# Mostra le note in linea con il log

git notes --ref=ci add -m "Build #42 passed" HEAD
# Usa un namespace personalizzato

git push origin 'refs/notes/*'
# Pubblica le note al remote

Errori comuni

Dimenticare di pushare e fetchare il ref delle note rende le note invisibili ai collaboratori. Configura notes.displayRef = refs/notes/* così tutti i namespace appaiono in git log. Le note non sopravvivono alle riscritture della storia a meno che non vengano migrate esplicitamente.

Comandi correlati

git log, git commit, git push, git fetch