Могу ли я узнать номер ревизии коммита?

Я вижу номер версии в svn с помощью команд, таких как svn info, но в git я могу видеть только имена объектов sha, есть ли способ узнать, сколько исправлений было выполнено?

Ответ 1

git description - это самый близкий способ получить такую информацию, как предложено в этом другом вопросе SO.

[[email protected] git]$ git describe parent
v1.0.4-14-g2414721

то есть текущий v1.0.4 моей "родительской" ветки основан на v1.0.4, но так как он имеет несколько v1.0.4, к ним добавлено число дополнительных коммитов ("14") и сокращенное имя объекта для фиксации. сам (" 2414721 ") в конце.

Количество дополнительных коммитов - это количество git log v1.0.4..parent которое будет отображаться в " git log v1.0.4..parent ".
Суффикс хеша - " -g " + 7-char аббревиатура с + 7-char -g для коммита tip родителя (2414721b194453f058079d897d13c4e377f92dc6).

Обратите внимание, что Git 2.22 (Q2 2019) исправляет последнее предложение, поскольку, хотя минимум составляет 7 символов, однозначная длина может быть больше.

Документация git describe теперь говорит:

Суффикс хеша - "-g" + однозначное сокращение для коммита "родитель" (это было 2414721b194453f058079d897d13c4e377f92dc6).

См. Коммит ffea024 (06 апреля 2019 г.) Филиппа Окли (PhilipOakley).
(Объединено Junio C Hamano - gitster - в коммите 18c3ae0, 25 апреля 2019 г.)


Конечно, вы всегда можете посчитать ваши коммиты

git shortlog -s -n
  135  Tom Preston-Werner
  15  Jack Danger Canty
  10  Chris Van Pelt

Опция -s все сообщения о -n в число -n опция -n сортирует список по количеству -n.

Эта команда также может быть полезна для changelogs, поскольку вы можете легко сбросить все изменения, внесенные каждым человеком.
Есть несколько других опций:
-e будет добавлять электронные письма, а вы можете контролировать ширину столбцов с помощью -w.
Проверьте man-страницу для получения дополнительной информации.