Git
Obwinianie
Szukaj…
Składnia
- git blame [nazwa pliku]
- git blame [-f] [- e] [- w] [nazwa pliku]
- git blame [zakres -L] [nazwa pliku]
Parametry
Parametr | Detale |
---|---|
Nazwa pliku | Nazwa pliku, dla którego należy sprawdzić szczegóły |
-fa | Pokaż nazwę pliku w zatwierdzeniu źródłowym |
-mi | Pokaż e-mail autora zamiast nazwiska autora |
-w | Zignoruj białe spacje podczas porównywania wersji podrzędnej i nadrzędnej |
-L początek, koniec | Pokaż tylko podany zakres wierszy Przykład: git blame -L 1,2 [filename] |
--show-stats | Pokazuje dodatkowe statystyki na końcu winy |
-l | Pokaż długie obroty (Domyślnie: wyłączone) |
-t | Pokaż nieprzetworzony znacznik czasu (Domyślnie: wyłączone) |
-rewers | Przejdź historię do przodu zamiast do tyłu |
-p, --porcelana | Wyjście na zużycie maszyny |
-M | Wykryj przeniesione lub skopiowane linie w pliku |
-DO | Oprócz opcji -M wykrywa linie przeniesione lub skopiowane z innych plików, które zostały zmodyfikowane w tym samym zatwierdzeniu |
-h | Pokaż komunikat pomocy |
-do | Użyj tego samego trybu wyjściowego co git-adnotate (Domyślnie: wyłączone) |
-n | Pokaż numer wiersza w oryginalnym zatwierdzeniu (Domyślnie: wyłączone) |
Uwagi
Polecenie git blame jest bardzo przydatne, jeśli chodzi o to, kto dokonał zmian w pliku na podstawie linii.
Pokaż zatwierdzenie, które ostatnio zmodyfikowało linię
git blame <file>
pokaże plik z każdą linią z adnotacją, która go ostatnio zmodyfikowała.
Zignoruj zmiany tylko do białych znaków
Czasami repo będą miały zatwierdzenia, które dostosowują tylko białe znaki, na przykład naprawiając wcięcia lub przełączając między tabulatorami i spacjami. Utrudnia to znalezienie zatwierdzenia w miejscu, w którym kod został napisany.
git blame -w
zignoruje zmiany tylko w białych znakach, aby dowiedzieć się, skąd tak naprawdę pochodzi linia.
Pokaż tylko niektóre linie
Dane wyjściowe można ograniczyć, określając zakresy linii jako
git blame -L <start>,<end>
Gdzie <start>
i <end>
mogą być:
numer linii
git blame -L 10,30
/ regex /
git blame -L /void main/
,git blame -L 46,/void foo/
+ offset, -offset (tylko dla
<end>
)git blame -L 108,+30
,git blame -L 215,-15
Można określić wiele zakresów linii i dozwolone są nakładające się zakresy.
git blame -L 10,30 -L 12,80 -L 120,+10 -L ^/void main/,+40
Aby dowiedzieć się, kto zmienił plik
// 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