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