Получение всех коммитов
git log
Получение последних n коммитов
Мы можем получить последние n коммитов, выполнив команду "git log -n". Скажем, мы хотим получить последние 2 коммита.
git log -2
Получение коммитов с определенной даты
Мы может фильтровать коммиты на основе даты, когда они были сделаны. Допустим, мы хотим получить все коммиты, сделанные 17.01.2022.
git log --since 2022-01-17
Получение коммитов до определенной даты
Аналогично мы можем получить коммиты, которые были сделаны до какой-то конкретной даты.
git log --until 2022-01-16
Получение коммитов по автору
Мы также можем получить коммиты, сделанные определенным автором. Например:
git log --author=pipinho13
Получение коммитов между двумя SHAs
Мы можем получить логи между двумя SHAs следующим образом:
git log <XXX>...<YYY>
где XXX и YYY - это соответствующие SHAs. Обратите внимание, мы можем заменить <YYY> на HEAD, если необходимо получить коммиты от <XXX> до настоящего момента, то есть:
git log <XXX>...HEAD
Получение коммитов, относящихся к файлу
Мы можем фильтровать логи по файлам. Предположим, мы хотим получить все логи, связанные с файлом "README.md".
git log README.md
Получение коммитов с использованием выражения
Мы можем использовать мощную команду "grep", чтобы фильтровать коммиты. Обычно мы ищем какое-то выражение в сообщении к коммиту. Например, давайте получим коммиты, которые содержат слово "wrong" в сообщении:
git log --grep="wrong"
Комментарии (5)
pistonsky
15.02.2022 00:24+2Попробуйте
git config --global alias.lol "log --graph --all --format=format:'%C(bold blue)%h%C(reset) - %C(bold green)(%ar)%C(reset) %C(white)%s%C(reset) %C(bold white)— %an%C(reset)%C(bold yellow)%d%C(reset)' --abbrev-commit --date=relative"
И затемgit lol
Во время просмотра результатов такого лога можете нажать на
/
и затем вбить ключевое слово (напримерHEAD
), а также после этого можно нажать наn
чтобы перейти к следующему совпадению.Можно ещё прибавить к той команде
--author Alex
и насохранять ещё парочку алиасов под каждого разработчика, чтобы мониторить чем он там занимается.Сразу станет видно насколько у вас чистый гит в команде )
Elmot
man git?