Как посмотреть историю коммитов в git через log?
Хочу увидеть, какие коммиты были в проекте: кто что менял и когда. Команда git log вываливает огромную простыню на весь экран. Как сделать историю компактной и читаемой?
2 ответа
Базовая команда — git log, но у неё есть удобные флаги.
Компактный однострочный вид (мой любимый):
git log --oneline
Каждый коммит — одна строка: короткий хеш + сообщение. Идеально, чтобы быстро глянуть историю.
Если нужна наглядная картинка веток со стрелочками:
git log --oneline --graph --all
--graph рисует дерево веток символами, --all показывает все ветки, а не только текущую.
Полезные ограничители:
git log -5
покажет только последние 5 коммитов. А посмотреть историю одного файла:
git log --oneline config.py
Из огромного git log выходят кнопкой q (он открывается в постраничном просмотрщике less).
Частая ошибка новичков: они жмут стрелки и не понимают, как выйти — экран «завис». На самом деле это просто пейджер: листай стрелками или пробелом, а для выхода нажми q (от quit).
Ещё пара трюков:
- Найти коммиты по автору:
git log --author="Иван" - Найти по слову в сообщении:
git log --grep="fix" - Увидеть, что именно менялось:
git log -p(покажет diff каждого коммита).
А если хочется красиво и постоянно — задай алиас в .gitconfig, чтобы git lg сразу давал граф с --oneline --graph.