March 18, 2022

Фильтрация коммитов при отображении с git log

Гибкие возможности по визуализации коммитов в Git, о которых я рассказывал ранее, следует использовать вместе со средствами отбора контрольных точек. Основные способы фильтрации:

По количеству коммитов

Оно ограничивается аргументом вида -n, где n - число (не понятные параметры объяснялись ранее):

git log -2 --pretty=format:"сообщен - %s, краткий хеш - %h"

По времени их создания

Через параметр --since и --after задается дата и время, после которого следует выводить коммиты:

git log --since=1.weeks --pretty=format:"%H %s"

Чтобы коммиты следовали до даты и времени, укажите ее в параметре --before или --untill:

git log --before=1.weeks --pretty=format:"%H %s"

Дату можно задать и в виде строки, например, "2021-08-11":

git log --before="2021-08-11" --pretty=format:"%H %s"

По строке сообщения

В помощь параметр --grep:

git log --pretty=format:"%H %s" --grep="m" 

По строке изменения в коде

Для этого воспользуйтесь параметром -S и в качестве значения передайте фрагмент строки, которая появилась в коде:

git log  -S "b = 2" --pretty=oneline