Что делает команда `git log`?

Команда git log отображает историю коммитов в репозитории. По умолчанию, она показывает все коммиты в обратном хронологическом порядке, начиная с самого последнего. Можно настроить вывод для фильтрации и форматирования информации о коммитах.

Команда git log - это мощный инструмент для просмотра истории коммитов в репозитории Git. Она показывает список коммитов, начиная с самого последнего, и предоставляет информацию о каждом коммите, такую как:

  • Хеш коммита (commit hash): Уникальный идентификатор коммита.
  • Автор (Author): Имя и email автора коммита.
  • Дата (Date): Дата и время коммита.
  • Сообщение коммита (Commit message): Описание изменений, внесенных в коммите.

В базовой форме, git log отображает историю в обратном хронологическом порядке, показывая каждый коммит со всеми вышеуказанными деталями.

Однако, git log имеет множество опций, позволяющих фильтровать и форматировать вывод:

  • git log -n <число>: Показывает только последние <число> коммитов. Например, git log -n 5 покажет последние 5 коммитов.
  • git log --oneline: Отображает каждый коммит в одну строку, показывая только короткий хеш и сообщение коммита. Это удобно для быстрого обзора.
  • git log --author="<имя>": Фильтрует коммиты по автору. Например, git log --author="John Doe" покажет коммиты, сделанные Джоном Доу.
  • git log --grep="<шаблон>": Фильтрует коммиты по сообщению коммита, используя заданный шаблон. Например, git log --grep="fix bug" покажет коммиты, в сообщении которых есть "fix bug".
  • git log --since="<дата>" / git log --until="<дата>": Фильтрует коммиты по дате. Например, git log --since="1 week ago" покажет коммиты за последнюю неделю.
  • git log --graph: Отображает историю коммитов в виде графа, показывая ветки и слияния. Часто используется с --oneline для более компактного представления.
  • git log <файл>: Показывает коммиты, которые затрагивали указанный файл. Например, git log src/main.py покажет коммиты, в которых изменялся файл src/main.py.
  • git log --pretty=format:"<формат>": Позволяет настроить формат вывода коммитов. Например, git log --pretty=format:"%h - %an, %ar : %s" покажет короткий хеш, имя автора, относительную дату и сообщение коммита. Список доступных спецификаторов формата можно найти в документации Git.

Использование различных опций git log позволяет эффективно находить нужную информацию в истории репозитория, отслеживать изменения, определять, кто и когда вносил те или иные изменения, и в целом понимать эволюцию проекта. Это незаменимый инструмент для любого разработчика, работающего с Git.
0