Git: Кто изменил эту строку? - PullRequest
41 голосов
/ 26 мая 2011

Если я обнаружил ошибку в своем приложении, иногда мне нужно знать, какие коммиты повлияли на строку исходного кода ошибки. Мне интересно, какой подход лучше всего сделать с помощью Git.

Ответы [ 5 ]

38 голосов
/ 26 мая 2011

Я бы использовал команду git blame. Это в значительной степени именно для этого. Документация должна помочь вам начать работу.

26 голосов
/ 27 сентября 2016

Чтобы увидеть коммиты, влияющие на строку 40 файла foo:

git blame -L 40,+1 foo

+1 означает ровно одну строку.Чтобы увидеть изменения для строк 40-60, это:

git blame -L 40,+21 foo

ИЛИ

git blame -L 40,60 foo

Второе число может быть смещением, обозначенным «+», или номером строки. Git Blame Docs

9 голосов
/ 26 мая 2011
git blame filename

- лучшая команда, чтобы показать вам эту информацию

8 голосов
/ 26 мая 2011

Если вам нужно только последнее изменение:

git blame

В противном случае вы можете попытаться автоматически найти ошибочное изменение с помощью

git bisect
0 голосов
/ 09 ноября 2017

Вы можете использовать

git annotate filename (or)

git blame filename
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...