Właśnie dowiedziałem się, że w jednym z moich plików testowych brakuje około 20 linii na górze.Jak mogę się dowiedzieć, kiedy jakaś część pliku została usunięta w git?
Ostatnio próbowałem opanować VIM, więc domyślam się, że udało mi się jakoś usunąć te linie, nawet nie zauważając, a następnie przekazując je do repozytorium.
Teraz pytanie brzmi, jaki jest najlepszy sposób, aby się dowiedzieć, kiedy to się stało? Jak mogę sprawdzić, kiedy coś zostało usunięte?
W rzeczywistości "git win - reverse" nie powie Ci, kto usunął linie bezpośrednio. Informuje o ostatniej rewizji, w której istniały linie. Jak znaleźć winną wersję, która faktycznie usunęła linię? W ten sposób zorientowałem się, jak to zrobić: weź rewizję LR z danych wyjściowych 'git blame --reverse', a następnie wykonaj to:' git log --reverse --ancestry-path $ LR..HEAD ', i pierwszy wpis jest kandydatem, wywołaj go C. Następnie użyj 'git show $ C' aby sprawdzić, a jeśli nie jest to czego szukasz, zacznij od nowa z git winy, zastępując R przez C. –
jbyler