Основными способами получения такого рода информации являются опции --shortstat
, --stat
и --numstat
, которые можно передавать на оборудование diffcore, например, через git-diff
и git-log
.
* 1007.* В вашем случае это звучит так, как будто вам нужна опция
--shortstat
, которая дает только итоговую строку, а не симпатичную информацию для каждого файла, которую вы видите после извлечения, заданного
--stat
.Последний,
--numstat
, дает ту же самую информацию о файлах в более машиночитаемом формате.
Чтобы применить это к диапазону фиксации, просто используйте git diff --shortstat A B
, где A
иB
- это коммиты, которые вы хотите сравнить.
Чтобы получить ту же информацию для каждого отдельного коммита в диапазоне, вместо того, чтобы объединить все вместе, используйте git log --shortstat A..B
.
Если вы хотитечтобы сделать это по дате, у вас есть пара вариантов:
Укажите один коммит, используя форму <branch>@{<date>}
.Имейте в виду, однако, что это дает позицию этой ветви на данную дату.Это хорошо, если это долгоживущая локальная ветвь, но если она еще не существовала на эту дату, или это удаленная ветвь, которая перемещается большими скачками при получении, это может быть не то, что вы хотите.
Используйте опции --since
и --until
для git log
.Это означает, что вам придется использовать два шага, если вы хотите получить общую сводку: один для определения коммитов на каждом конце диапазона, а другой для фактического сравнения.
Подробнее о том, как указывать коммиты, см. man gitrevisions
.