На самом деле основной критерий сортировки задается отношениями родитель-потомок, которые всегда соблюдаются в списках журналов (если три коммита объединены в цепочку A->B->C
, они никогда не будут отображаться в порядке A C B
, независимо от даты или параметров журнала).
Но когда мы показываем коммиты из ветвей параллелизма, в упорядочении есть некоторая свобода. Для этого сценария существуют опции --date-order --topo-order
. И здесь «дата-порядок» (по умолчанию) означает committer_date
. Если вы хотите sh отсортировать по дате автора, есть дополнительная опция --author-date-order
.
Если вы выводите коммиты из одной ветви, то эти параметры не имеют значения.
Do c: https://git-scm.com/docs/git-log#_commit_ordering
---1----2----4----7
\ \
3----5----6----8----9--
Предположим, у вас есть эта история коммитов (скопированная из документов), где горизонтальная координата соответствует дате (автора). Тогда в журнале отобразится:
date-order topo-order topo-order (alt)
9 9 9
8 8 8
7 6 7
6 5 4
4 3 2
5 7 6
2 4 5
3 2 3
1 1 1
Подробнее здесь