Articolo originale: Git Log Command Explained

Cosa fa git log?

Il comando git log visualizza tutti i commit nella cronologia di un repository.

Nella modalità predefinita, il comando visualizza per ogni commit:

  • Secure Hash Algorithm (SHA)
  • autore
  • data
  • messaggio di commit

Spostarsi in Git Log

Git usa l'impaginatore Less del terminale per sfogliare la cronologia dei commit. Puoi spostarti al suo interno usando i seguenti comandi:

  • per andare alla riga successiva, usa il tasto  j oppure ↓
  • per andare alla riga precedente, usa il tasto k oppure ↑
  • per spostarti alla videata (pagina) successiva usa la barra spaziatrice oppure il tasto Pagina Giù
  • per spostarti alla videata (pagina) precedente, usa il tasto b oppure il tasto Pagina Su
  • per uscire dal log, usa il tasto q

Opzioni di Git Log

Puoi personalizzare le informazioni presentate da  git log tramite opzioni.

--oneline

git log --oneline

L'opzione --oneline fa in modo che  git log visualizzi:

  • un commit per riga
  • i primi sette caratteri del SHA
  • il messaggio di commit

--stat

git log --stat

L'opzione --stat fa in modo che git log visualizzi:

  • i file che sono stati modificati in ogni commit
  • il numero di righe aggiunte o rimosse
  • una riga di riepilogo con il numero totale di file e righe modificati

--patch oppure -p

git log --patch

oppure nella versione abbreviata

git log -p

L'opzione --patch fa in modo che git log visualizzi:

  • i file che hai modificato
  • la posizione delle righe che hai aggiunto o rimosso
  • le modifiche specifiche che hai effettuato

Visualizzare un numero specifico di commit per autore

Per visualizzare un numero specifico di commit eseguiti da un autore nel repository corrente (con l'opzione --pretty per un formato abbellito) si può usare il comando seguente:

git log --pretty=format:"%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset" -n {NUMERO_DI_COMMIT} --author="{NOME_AUTORE}" --all

Partire da uno specifico commit

Per far partire git log da uno specifico commit usa il suo SHA:

git log 7752b22

Questo visualizzerà il commit con SHA 7752b22 e tutti i commit effettuati prima di quello. Puoi aggiungere qualsiasi altra opzione.

--graph

git log --graph

L'opzione --graph ti consente di visualizzare il tuo git log come un grafico. Per rendere le cose interessanti, puoi aggiungere l'opzione --oneline che hai appreso qui sopra.

git log --graph --oneline

Il risultato sarebbe simile a questo:

* 64e6db0 Update index.md
* b592012 Update Python articles (#5030)
* ecbf9d3 Add latest version and remove duplicate link (#8860)
* 7e3934b Add hint for Compose React Components (#8705)
* 99b7758 Added more frameworks (#8842)
* c4e6a84 Add hint for "Create a Component with Composition" (#8704)
*   907b004 Merge branch 'master' of github.com:freeCodeCamp/guide
|\  
| * 275b6d1 Update index.md
* |   cb74308 Merge branch 'dogb3rt-patch-3'
|\ \  
| |/  
|/|   
| *   98015b6 fix merge conflicts after folder renaming
| |\  
|/ /  
| * fa83460 Update index.md
* | 6afb3b5 rename illegally formatted folder name (#8762)
* | 64b1fe4 CSS3: border-radius property (#8803)

Uno dei vantaggi dell'utilizzo di questo comando è che ti consente di ottenere un riepilogo di come i commit si sono integrati e come si è formata la cronologia.

Ci sono molte altre opzioni che potresti usare assieme a --graph. Un paio di queste sono  --decorate e --all. Assicurati di provare anche queste. Puoi fare riferimento alla documentazione (in lingua inglese) per ulteriori informazioni utili.

Ulteriori Informazioni (in lingua inglese):

Altre Risorse su Git