git: есть ли опция командной строки для "Сортировать по дате" для gitk?

Я пытаюсь найти параметр командной строки для gitk, который имеет тот же эффект "Строго сортировать по дате" в окне "Просмотр / редактирование представления...".

man gitk показывает очень ограниченное количество параметров по сравнению с доступными в графическом интерфейсе.

1 ответ

Решение

man gitk по крайней мере упоминает, что он принимает те же варианты, чем git rev-list, в том числе

--date-order 

Эта опция похожа на --topo-order в том смысле, что ни один из родителей не предшествует всем своим потомкам, но в остальном все по-прежнему упорядочено в порядке отметок времени коммита.

Смотрите " Руководство по пониманию Gitk? " Для получения дополнительной информации.


Примечание: если -d или же --date-order это действительно тот аргумент, который вам нужен, лучше не использовать слишком много, по словам самого Линуса (из lists-archives.com/git или http://www.spinics.net/lists/git/msg67309.html):

Дело в том, --date-order выстраивает и смешивает коммиты в одной и той же цепочке разработки, и, таким образом, значительно усложняет просмотр различных цепочек разработки.
Это также приводит к тому, что развитие становится более "параллельным", что, в свою очередь, делает представление еще более сложным для чтения.

Поэтому я бы предложил не использовать --date-order по умолчанию. Это ничего не добавляет к нормальному потоку, и это делает общую картину более трудной для просмотра.

Единственный раз, когда вы действительно хотите --date-order (или же " -d ", что является сокращением для всего gitk) действительно

  • когда большая картина действительно очень проста, и вы действительно хотите видеть больше деталей, потому что большая картина слишком тривиальна, чтобы быть интересной в противном случае.
    (Другими словами: --date-order отлично подходит для действительно простой разработки, где есть только пара ветвей или когда вы удалили столько истории, что оставшаяся часть проста)
  • когда хочешь отладить git rev-list "поведение само по себе, поскольку порядок дат действительно имеет значение для того, как git пересекает цепочки коммитов.

Во втором случае я подозреваю, что никто, кроме меня и нескольких других людей, никогда не сталкивался.
Я нашел это очень полезным вместе с --show-all когда я отлаживал ходок ревизии (см. коммиты " Добавить" --show-all "флаг обходчика ревизий для отладки " и " сделать ограничение ревизий более устойчивым к случайным ошибочным датам фиксации ", где первый реализует --show-all и второй является конечным результатом моей отладки).

Другими словами: никогда не начинай с " -d " или же " --date-order " по умолчанию.
Только если у вас есть основания думать, что представление слишком простое или вам нужно углубиться в отношения фиксации, следует использовать его.

Другие вопросы по тегам