📜 Как перечислить теги Git

by itisgood

В Git’е теги используются для определения коммитов в вашей истории, которые могут быть важнее других.

При выполнении merge коммита, непосредственно перед развертыванием, вы можете захотеть поставить тег на этот коммит.

Таким образом, если вы решите вернуться к предыдущей версии, вы сможете найти этот коммит в мгновение ока.

Однако для того, чтобы найти этот коммит, вам понадобится список существующих Git-тегов вашего репозитория.

В этом руководстве вы узнаете, как можно легко составить список Git-тегов вашего хранилища.

Список локальных тегов Git

Чтобы перечислить теги Git, необходимо использовать команду “git tag” без аргументов.

$ git tag

v1.0
v2.0

Вы также можете выполнить команду “git tag” с опцией “-n”, чтобы получить подробное описание списка тегов.

$ git tag -n

В качестве опции можно указать шаблон тега с помощью параметра “-l”, за которым следует  сам шаблон.

$ git tag -l <pattern>
Отлично, вы успешно отразили теги в своем Git-репозитории!

Список и сортировка тегов Git

Кроме того, вы можете выбрать список ваших тегов и отсортировать их в соответствии с лексическим или версионным порядком.

Для того чтобы перечислить теги Git в лексикографическом порядке, необходимо использовать команду “git tag” с опцией “-sort=refname” и дополнительным шаблоном тега.

$ git tag -l --sort=refname <pattern>

Сортировка по имени ссылки – не единственный способ сортировки тегов Git.

Вы также можете выбрать сортировку тегов по версиям: в этом случае имена тегов будут рассматриваться как номера версий.

Чтобы получить список тегов Git, отсортированных по номерам версий, необходимо использовать команду “git tag” с опцией “-sort=version:refname” и дополнительным шаблоном тега.

$ git tag -l --sort=-version:refname <pattern>
Сортировка самых последних Git-тегов
Чтобы перечислить и отсортировать Git-теги по их последней активности в Git, вы можете использовать команду “git tag” с параметром “-sort=committerdate”.
$ git tag --sort=committerdate -l <pattern>
Поздравляем, вы успешно отсортировали свои теги Git с помощью опций сортировки!

Список удаленных тегов Git

Как вы уже знаете, Git – это децентрализованная система версионирования.

Как следствие, вы могли не получить некоторые теги, которые были доступны другим разработчикам в вашем репозитории.

Чтобы получить список удаленных Git-тегов, вам нужно использовать команду “git ls-remote” с опцией “-tags” и именем вашего удаленного репозитория.

$ git ls-remote --tags <remote>

Например, если ваше удаленное имя – “origin”, вам нужно выполнить следующую команду.

$ git ls-remote --tags origin

53a7dcf1ca57e05d456321b406730b39dc8ed75e        refs/tags/v1.0
7a9ad7fd794bf52a11de43aacc6010978e6100d3        refs/tags/v2.0

Примечание : как вы видите, при использовании команды “ls-remote” вам будут представлены теги, использующие синтаксис “refs”, который уже объяснялся в наших предыдущих уроках.

Простая выборка удаленных тегов

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

Чтобы получить теги из удаленного репозитория, используйте команду “git fetch” с параметрами “-all” и “-tags”.

$ git fetch --all --tags

Fetching origin
From git-repository
   53a7dc..7a9ad7    master     -> origin/master
 * [new tag]         v1.0       -> v1.0
 * [new tag]         v1.0       -> v2.0

Отлично, вы извлекли свои теги из удаленного репозитория!

Теперь вы можете легко перечислить их с помощью команды “git tag” (без аргументов!).

$ git tag

v1.0
v2.0

Как найти последний доступный тег Git

Чтобы найти последний тег Git, доступный в вашем репозитории, необходимо использовать команду “git describe” с опцией “-tags”.

Таким образом, вам будет представлен тег, связанный с последним коммитом вашей текущей проверенной ветки.

$ git describe

<latest_tag>

Заключение

В этом руководстве вы узнали, как можно легко составить список ваших Git-тегов, независимо от того, локальные они или удаленные.

Вы также узнали, что можно использовать расширенные опции сортировки, чтобы отсортировать результаты по последней дате или номеру версии.

У нас есть и другие руководства по Git-тегам, обязательно ознакомьтесь с ними:

 

You may also like

Leave a Comment