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 


Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow