Da Anonimo (non verificato) , 29 Aprile 2026

Sinossi

git rev-parse [<options>] <arg>...

Descrizione

Il comando git rev-parse risolve riferimenti e argomenti Git. Trasforma nomi simbolici (branch, tag, HEAD~3, HEAD@{yesterday}) in SHA di 40 caratteri, normalizza opzioni e risponde a domande introspettive sul repository corrente (path top-level, directory Git, se siamo in un worktree). È il coltellino svizzero dello scripting Git.

Nell'uso quotidiano, git rev-parse si integra con alias e CI.

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

Quando usarlo

Vedrai git rev-parse in quasi ogni script shell che avvolge Git: per ottenere il nome del branch corrente, la root del repo o per validare che un argomento sia un commit valido. La maggior parte degli utenti non lo esegue direttamente quotidianamente, ma la conoscenza di esso migliora drasticamente la fluidità dello scripting Git.

Opzioni comuni

OpzioneDescrizione
--abbrev-refStampa il nome ref corto (es. main, non refs/heads/main).
--shortOutput dello SHA abbreviato.
--show-toplevelStampa il path assoluto della root del repo.
--git-dirStampa il path assoluto di .git.
--is-inside-work-treeRisposta sì/no script-friendly.
--verifyValida che l'argomento sia un ref reale.
--quietSopprime l'output di errore.

Esempi

git rev-parse HEAD
# SHA completo del commit corrente

git rev-parse --abbrev-ref HEAD
# Nome del branch corrente (o "HEAD" se detached)

git rev-parse --show-toplevel
# Path alla root del repo, utile negli script

git rev-parse --verify origin/main >/dev/null && echo OK
# Testa se un ref esiste

Errori comuni

Usare git rev-parse su input utente senza --verify può riuscire per argomenti ambigui e produrre risultati sorprendenti. Nei subshell, --show-toplevel è un'ancora più affidabile di $PWD.

Comandi correlati

git symbolic-ref, git rev-list, git for-each-ref, git config