Страницы

Поиск по вопросам

среда, 5 июня 2019 г.

Как показать N последних тегов (меток)?

У меня есть репозиторий, в котором достаточно много меток. Я хотел бы увидеть только несколько последних. Если я использую обычную команду, то получаю полный список меток, и он отсортирован в порядке, обратном тому, который мне нужен.
git tag
v1.0.0 v1.1.0 v2.0.0 v2.0.0RC1 v2.0.0RC2 v2.0.0RC3 v2.0.1 v2.1.0 v2.1.0RC1 v2.1.0RC2
Что я хочу:
git magic
v2.1.0RC2 v2.1.0RC1 v2.1.0
Как я могу получить список из N последних меток, отсортированных в нужном мне порядке?

Для будущей пометки связанных вопросов на разных языках: https://stackoverflow.com/questions/30805098/how-to-display-last-n-tags-in-git


Ответ

С помощью git tag --sort (Git v 2.0.0+ )
Обратите внимание, я использую знак минуса -, чтобы инвертировать порядок сортировки (по умолчанию используется от более старых к новым).
UNIX, Linux, OS X: утилита head
git tag --sort=-version:refname | head -n
Windows, UNIX-way
Установите Cygwin Используйте ответ для UNIX
Windows, команда Select
git tag --sort=-version:refname | Select -First
С помощью git describe
git describe --tags $(git rev-list --tags --max-count=)
(Это перевод собственного ответа. Вариант с describe предложен @hsirah.)

Комментариев нет:

Отправить комментарий