Какие флаги нужно установить в `git log`, чтобы он выглядел аналогично`git whatchanged`?

Пер: Разница между git-log и git-whatzed?

Поощряйте новых пользователей вместо использования журнала. В наши дни эти команды унифицированы и имеют разные значения по умолчанию.

Я только недавно обнаружил git whatchanged но нашел свой вывод:

commit deadbeefdeadbeefdeadbeefdeadbeefdeadbeef
Author: Egg Sample <mail@example.com>
Date: Mon Jan 28 16:32:04 2019 -0800

    change some files

:100777 100644 abaddad1 feeb1e42 M      src/changemymode.txt
:100644 100644 1234abcd abcd1234 M      src/changemycontent.txt
:000000 100755 00000000 6600abcd A      src/addme.txt
:100755 000000 feed1bee 00000000 D      src/deleteme.txt

полезный для определенного рабочего процесса, который у меня был недавно (включая ветку со многими изменениями режима файла). Из любопытства, что мне нужно сделать, чтобы сделать git log вести себя таким образом, то есть:

  • показать информацию о коммите,
  • старый режим, новый режим, хэши, Modified|Added|Deleted и имена файлов, которые изменились
  • а не сами разницы
  • (и исключить слияния по умолчанию, которое также вызывается как git whatchanged поведение).

Я подумал, что это может быть что-то в --stat или же --format варианты, но git log --help кажется, ничего не говорится о печати файловых режимов и хэшей объектов в сочетании с этими параметрами, и при быстром сканировании указанного документа у меня ничего не выходит.

0 ответов

Именно поэтому этот вопрос не остался без ответа:

В соответствии с этим исправленным ответом более новые версии git объясняют это наman git-whatchanged

Команда whatchanged по сути такая же, как и git-log(1), но по умолчанию показывает вывод diff в необработанном формате и пропускает слияния.

Так:

git log --raw --no-merges
Другие вопросы по тегам