git log --graph --oneline --all
выведет историю коммитов в виде текстового графа, где каждая строка представляет один коммит. --graph
отображает ветви и слияния в виде ASCII-графики.--oneline
сокращает каждый коммит до одной строки, показывая только первые несколько символов хеша и сообщение.--all
включает в вывод все ветви и теги в репозитории.Команда git log --graph --oneline --all
выведет историю коммитов в репозитории в графическом виде, в одну строку на каждый коммит, и покажет историю всех веток.
Разберем параметры:
git log
: Это основная команда для просмотра истории коммитов.--graph
: Отрисовывает ASCII-график истории коммитов в левой части вывода. Это помогает визуализировать ветки, слияния и расхождения в истории репозитория.--oneline
: Сокращает вывод каждого коммита до одной строки. Отображает только первые несколько символов SHA-1 хэша (обычно 7) и краткое описание коммита.--all
: Показывает историю коммитов всех веток и удаленных веток (если они были получены с помощью git fetch
). Если этот параметр не указан, git log
покажет только историю текущей ветки.Пример вывода:
* commit_hash Merge branch 'feature/new-feature' |\ | * commit_hash Add some more code |/ * commit_hash Added a cool new feature * commit_hash Fixed a bug * commit_hash Initial commit
Объяснение примера:
*
обозначает коммит.commit_hash
заменяет реальный хэш коммита.Merge branch 'feature/new-feature'
показывает, что была выполнена операция слияния ветки feature/new-feature
.|
и \
символы используются для отрисовки графика ветвей.feature/new-feature
отделилась от основной ветки, добавила Add some more code
, и была слита обратно.Этот формат вывода особенно полезен для понимания сложной истории коммитов, включающей множество веток и слияний. Он позволяет быстро получить обзор структуры репозитория и понять, как развивались различные части проекта.