Ricerca…
Sintassi
- git blame [nome file]
- git blame [-f] [- e] [- w] [nome file]
- git blame [-L range] [nomefile]
Parametri
| Parametro | Dettagli |
|---|---|
| nome del file | Nome del file per il quale i dettagli devono essere controllati |
| -f | Mostra il nome del file nel commit di origine |
| -e | Mostra l'e-mail dell'autore al posto del nome dell'autore |
| -w | Ignora gli spazi bianchi mentre fai un confronto tra la versione di un bambino e quella di un genitore |
| -L inizio, fine | Mostra solo l'intervallo di righe specificato Esempio: git blame -L 1,2 [filename] |
| --mostra-stats | Mostra statistiche aggiuntive alla fine dell'output della colpa |
| -l | Mostra long rev (Predefinito: off) |
| -t | Mostra data / ora grezza (impostazione predefinita: disattivata) |
| -inverso | Passa la storia in avanti invece che indietro |
| -p, --porcelain | Uscita per il consumo della macchina |
| -M | Rileva linee spostate o copiate all'interno di un file |
| -C | Oltre a -M, rileva le linee spostate o copiate da altri file che sono stati modificati nello stesso commit |
| -h | Mostra il messaggio di aiuto |
| -c | Usa la stessa modalità di uscita di git-annotate (Default: off) |
| -n | Mostra il numero di riga nel commit originale (predefinito: off) |
Osservazioni
Il comando git blame è molto utile quando si tratta di sapere chi ha apportato modifiche a un file su una base per riga.
Mostra il commit che ha modificato l'ultima riga
git blame <file>
mostrerà il file con ogni riga annotata con il commit che l'ha modificata per l'ultima volta.
Ignora le modifiche solo per lo spazio bianco
A volte i repository hanno commit che regolano solo gli spazi, per esempio correggendo il rientro o passando da tab e spazi. Ciò rende difficile trovare il commit in cui il codice è stato effettivamente scritto.
git blame -w
ignorerà le modifiche solo per lo spazio per trovare da dove proviene veramente la linea.
Mostra solo determinate righe
L'output può essere limitato specificando intervalli di righe come
git blame -L <start>,<end>
Dove <start> e <end> possono essere:
numero di riga
git blame -L 10,30/ Regex /
git blame -L /void main/,git blame -L 46,/void foo/+ offset, -offset (solo per
<end>)git blame -L 108,+30,git blame -L 215,-15
È possibile specificare più intervalli di righe e sono consentiti intervalli sovrapposti.
git blame -L 10,30 -L 12,80 -L 120,+10 -L ^/void main/,+40
Per scoprire chi ha cambiato un file
// Shows the author and commit per line of specified file
git blame test.c
// Shows the author email and commit per line of specified
git blame -e test.c file
// Limits the selection of lines by specified range
git blame -L 1,10 test.c