Подсчет коммитов в git-description

Может кто-нибудь объяснить, почему git description использует счет как "количество коммитов, которое будет показано тегом git log..input" [из git- description (1) ]?

Концептуально я думал, что git-description использует количество коммитов с момента тега как монотонно увеличивающийся счетчик. Тем не менее, кажется, что он на самом деле использует количество коммитов, достижимых из 'input', минус коммиты, достижимые 'tag'. Это почему?

В данном конкретном случае я создал тег выпуска ("1.0.0"), а затем выпуск патча ("1.0.1") на ветке ("1.0"). Я объединил [см. http://www.kernel.org/pub/software/scm/git/docs/gitworkflows.html ] ветвь, которая меняется на master. Тем не менее, когда я git-описываю более поздний коммит на master, счетчик совпадает с выводом git log tag..input. Я ожидал, что это будет соответствовать git log --ancestry-path tag..input.

Благодарю.

1 ответ

git describe это способ сообщить HEAD значимым образом. Это простой ответ на вопрос "Где я в истории?" или "Какая версия кода это?"

Итак, когда вы запускаете команду, она начинается там, где вы сейчас находитесь, является ли это master, какой-то другой тег или просто случайный коммит. Начиная с этой начальной точки, он считает в обратном направлении по фиксации, пока не найдет тег. Оттуда он напечатает тег, подсчитанное количество коммитов, затем короткий номер коммитов.

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