2009-12-01 17 views
34

Mi piacerebbe analizzare le metainformazioni dal repository git. Mi piacerebbe andare a prendere una sola informazione per un commit, come inCome visualizzare le metainformazioni sul singolo commit in git

git log --pretty=format:%an HEAD^..HEAD 

Il problema è che questo non sta funzionando per il primo commit nel repository.

git show --pretty=format:%an HEAD^..HEAD 

è anche vicino a quello che voglio, tranne che non mi interessa analizzare il diff reale.

Qualche idea su come far funzionare git log per il primo commit o su come disabilitare git show dal mostrare il contenuto del commit?

Oppure, c'è un modo migliore per recuperare i metadati sul commit dato?

risposta

51

Fornire l'opzione silenziosa da mostrare per sopprimere il diff.

git show --quiet HEAD 

Così, per il tuo esempio, il nome dell'autore:

git show --quiet --pretty=format:%an 
+0

perso che nei documenti, grazie! – Almad

+3

Non sentirti male; non è nei documenti. (la copia di documenti, che dice "Questa pagina di manuale descrive solo le opzioni più usate.") – Derek

+4

Nella versione git 1.7.11.msysgit.0, '--quiet' viene semplicemente ignorata. Qui, '-s' funziona bene – koppor

4
git --no-pager show -s --format='%an <%ae>' COMMIT 

(Tratto da quora.com)

Problemi correlati