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