Как найти коммит первого релиза в Git-репозитории - PullRequest
0 голосов
/ 08 ноября 2019

Я пытаюсь проанализировать влияние, например, скорость коммитов, на продолжительность до первого выпуска репозиториев программного обеспечения на github.

Я обнаружил, что использование Github API не очень хорошая идея, так как большинство хранилищ не используют эту функциональность github.

Моя вторая идея заключалась в использованииинформация в тегах, но кажется, что теги не имеют последовательных имен в разных репозиториях, например, вы можете иметь следующие теги:

  • v1.0
  • v.1.0.1
  • Выпуск 1.0
  • Выпуск 1.0.1
  • 1.0
  • 1.0.1
  • 1.0.0.10
  • и т. Д.

Конечно, я мог бы использовать регулярное выражение для фильтрации соответствующих тегов, но мне интересно, есть ли более удобный способ получить релизы, особенно первый выпуск репозитория.

1 Ответ

1 голос
/ 08 ноября 2019

Должен быть лучший способ. Пейджинг @ torek

for x in `git tag`; do
  TAG=`git log -n1 --pretty="%cd %h" --date=iso refs/tags/$x`
  LIST=`echo -e "${TAG}\n${LIST}"
done
echo "${LIST}" | sort -M --reverse | uniq | tail -n1 | awk '{print $4}'| xargs git describe --tags
...