Я видел много вопросов о методах использования git blame
, но я не совсем их понимаю.
Я вижу Blameкнопку поверх файлов на интерфейсе GitHub. При нажатии на него, он показывает некоторые различия с именами пользователей на левой панели. Что это означает?
Почему на git blame
самом деле используется, кроме GitHub?
git praise
вместо него :) github.com/ansman/git-praisegit objectively-determine-contributer
просто нет такого же звонка.git who
Ответы:
Из мерзавца :
Пример:
Обратите внимание, что
git blame
не показывает историю изменений для каждой строки в хронологическом смысле. Он только показывает, кто был последним, кто изменил строку в документе до последнего коммита вHEAD
.То есть, чтобы увидеть полную историю / журнал строки документа, вам нужно будет запустить
git blame path/to/file
для каждого коммита в вашемgit log
.источник
Команда объясняет себя довольно хорошо. Это чтобы выяснить, какой сотрудник написал конкретную строку или разрушил проект, чтобы вы могли их винить :)
источник
git blame
звучит так, как если бы она имела какой-то постоянный эффект, подобный томуgit commit
, где на самом деле она просто информирует вас о том, какие изменения были сделаны кем. Это и отрицательный оттенок, который несет слово «вина», заставляют команду звучать как нечто, от чего вам следует держаться подальше, и приводят к таким вопросам, как этот, требующий разъяснения.git praise
.Из GitHub :
В основном,
git-blame
используется, чтобы показать, какая ревизия и автор последней изменили каждую строку файла. Это похоже на проверку истории разработки файла.источник
Команда
git blame
используется, чтобы узнать, кто / какой коммит отвечает за последние изменения, внесенные в файл. Автор / коммит каждой строки также можно увидеть.git blame filename
(принимает ответственность за изменения для всех строк в коде)git blame filename -L 0,10
(принимает на себя ответственность за изменения из строки «0» в строку «10»)Есть много других вариантов обвинения, но в целом они могут помочь.
источник
Команда
git blame
аннотирует строки информацией из ревизии, которая последний раз изменяла строку, и ... с Git 2.22 (Q2 2019) будет делать это быстрее из-за исправления производительности вокруг "git blame
", особенно в линейной истории (которая является норма, которую мы должны оптимизировать).Смотрите коммит f892014 (02 апреля 2019) Дэвида Каструпа (
fedelibre
) . (Объединено Junio C Hamano -gitster
- в коммите 4d8c4da , 25 апреля 2019 г.)источник
Команда
git blame
используется для построчного просмотра содержимого файла и определения, когда каждая строка была изменена в последний раз и кто был автором изменений.Если вам нужно знать историю однострочного кода, используйте
git log -S"code here"
, проще, чем git blame.Git Log против Git вины
источник