Обновление Git 2.18 (Q2 2018): "git blame
" учит не выделять неинтересные метаданные исходной фиксации в строках, которые совпадают с предыдущей, а также окрашивает линии в разные цвета в зависимости от возраста фиксации..
См. коммит 0dc95a4 , коммит 25d5f52 , коммит cdc2d5f (24 апреля 2018) Стефан Беллер (stefanbeller
).
(Объединено с Junio C Hamano - gitster
- in commit 3d24129 , 30 мая 2018 г.)
builtin/blame
: добавить новую конфигурацию схемы окраски
Добавить параметр конфигурации, позволяющий выбрать цветовую схему по умолчанию для вины.Командная строка по-прежнему имеет приоритет над конфигурацией.
git config
теперь сообщает:
blame.coloring::
Это определяет схему окраски, которая будетприменяется к выводу с обвинением.
Это может быть 'repeatedLines
', 'highlightRecent
' или 'none
', который является значением по умолчанию.
встроенный/ blame: выделите недавно измененные строки
Выберите другой цвет для дат и имитируйте «понижение температуры» в зависимости от возраста.
Как и в предыдущем патче, предлагается опция командной строки '--color-by-age
'для включения этого режима и опция конфигурации' color.blame.highlightrecent
'для выбора цветов.
Документация теперь добавляет:
color.blame.highlightRecent
Это можно использовать для окраски метаданных линии обвинения в зависимости от возраста линии.
Для этого параметра должен быть задан разделенный запятыми список настроек цвета и даты, начиная и заканчивая цветом, даты должны быть установлены от самого старого до самого нового.
Метаданные будут окрашены с учетом цветацвета, если линия была введена до заданной метки времени, перезаписывая старые метки времени.
Вместо абсолютной метки времени работают и относительные метки времени, например, 2.weeks.ago действителен для обращения ко всему более старомучем 2 недели.
По умолчанию используется значение «blue,12 month ago,white,1 month ago,red
», при котором все цвета старше одного года окрашены в синий цвет, последние изменения в возрасте от одного месяца до одного года остаются белыми, а строки вводятся в последнеммесяц окрашен в красный цвет.
builtin/blame
: тусклые неинтересные строки метаданных
При использовании git-blame
множество строк содержат избыточныенапример, в фрагментах, состоящих из нескольких строк, метаданные (имя коммита, автор, дата) повторяются.
Читатель может их не интересовать, поэтому предложите вариант окрасить информацию, которая повторяется изпредыдущая строка по-другому.
Традиционно, мы используем CYAN для строк, которые менее интересны, чем другие (например, заголовок куска), поэтому пойдем с этим.
Параметр командной строки '--color-lines
' вызовет раскраскуповторяющихся линий, и опция конфигурации 'color.blame.colorLines
' предназначена для выбора цвета.
Установка опции конфигурации не подразумевает, что повторяющиеся линии окрашены.
Оригиналответ 2010
Учитывая, что веб-интерфейс, такой как Trac или Redmine, интегрирует git blame
результаты, я полагаю, что такой анализ уже выполнен.
Вы можете видеть в этом Redmine Defect 3832 Пример с этим сценарием ruby: