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

    Команда Simple-Server
    03.06.2026
    6 мин

    Материал подготовлен командой Simple-Server для администраторов VPS и выделенных серверов. Команды и пути проверяйте на тестовой машине перед production.

    Кратко о задаче

    Чтобы понять, что представляют собой эти метки, нужно рассмотреть еще несколько терминов. Во-первых, это коммит (commit). Определение коммитов простое — это точки сохранения версий проекта. Несколько коммитов образуют ветку (branch), которая является наглядной демонстрацией истории изменений проекта, при этом веток может быть и несколько. Вот мы и подошли к ключевому определению.

    Теги Гит — это метки, предназначенные для обозначения важных коммитов. По ним, как правило, можно отследить историю версий, поскольку ответственные разработчики помечают очередную версию именно такой ссылкой. Добавим, что Git tags, как и ветки, указывают на конкретный коммит, однако, в отличие от последних, у них нет истории коммитов. Теперь посмотрим, как выполняется работа с тегами Git, от создания, просмотра и публикации до замены, переключения и удаления.

    В Гит есть два основных вида меток: аннотированные и легковесные, и создаются они по-разному.

    Создание аннотированных тегов

    Аннотированными (или аннотируемыми) называются такие метки, которые содержат полную информацию о версии, включая имена и e-mail разработчиков, а также дату и время создания. Чтобы создать аннотированный тег, нужно использовать специальные параметры Git, называемые флагами. В данном случае это будут флаги -a и -m. Вот пример кода для создания аннотированной метки:

    $ git tag -a ver-2.5 -m "beta version 2.5" $ git tag ver-0.1 ver-1.6 ver-2.5

    Здесь $ git tag — основная команда для работы с метками, -a — параметр для создания аннотированного тега, за которым следует его идентификатор, а с помощью флага -m создается комментарий. Если попытаться создать аннотированный тег без комментария, откроется редактор, который предложит его ввести. Вывести затем данные метки вместе с коммитом можно, используя команду $ git show. Выглядит это так:

    $ git show ver-2.5 tag ver-2.5 Tagger: Petr Ivanov <petr@company.ru> Date: Fri Jul 1 18:02:35 2022 -0300 beta version 2.5 commit bf93b7eaa928fd77a55453118313701b04874051 Author: Ivan Petrov <ivan@company.ru> Date: Mon Jan 3 16:41:02 2022 -0300

    Как видим, команда $ git show сначала выводит данные автора тега, после чего идет комментарий, а затем данные коммита в виде контрольной хеш-суммы, которая состоит из 40 знаков. Также указывается автор коммита и дата его создания.

    А проверить, что метка была создана успешно, можно при помощи флага -n. Эта команда очень простая:

    Создание легковесных тегов

    Легковесными тегами называются обычные указатели на коммиты, которые подходят для создания временных меток. Фактически легковесные метки представляют собой сохраненные в файлы контрольные хеш-суммы коммитов. Посмотрим на то, как выглядит код создания легковесной метки:

    $ git tag ver-2.5a $ git tag ver-0.1 ver-1.6 ver-2.5 ver-2.5a ver-2.6

    А теперь попробуем вывести данные тега вместе с коммитом:

    $ git show ver-2.5a commit bf93b7eaa928fd77a55453118313701b04874051 Author: Ivan Petrov <ivan@company.ru> Date: Mon Jan 3 16:41:02 2022 -0300

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

    Как добавлять и удалять теги Git в удаленных репозиториях

    Для добавления меток Гит во внешние репозитории и удаления из них следует использовать команду push в таком виде:

    $ git push origin ver-2.5

    origin здесь обозначает сокращенное имя первоначального удаленного репозитория, откуда проект был клонирован. Для добавления в репозиторий нескольких тегов используйте флаг --tags вот так:

    Удаление меток из внешнего репозитория осуществляется несколькими способами, но наиболее простой — при помощи флага --delete :

    $ git push origin --delete ver-2.5

    А вот если мы введем такой код с флагом -d , который тоже указывает на удаление тега:

    то для удаленного репозитория эта команда не сработает: флаг -d предназначен для удаления меток только на локальных, внутренних серверах.

    Эта процедура выполняется при помощи команды checkout. Набрав в командной строке:

    вы перейдете прямо к указанной метке. Однако учтите, что при переходе на теги открепляется указатель HEAD , а потому все последующие изменения будут сохраняться уже в новом коммите, не относящемся ни к одной из существующих веток. И переходить туда можно будет только по контрольной хеш-сумме. Так что не забывайте создавать новые ветки, если вносите изменения при открепленном указателе HEAD , который открепляется после ввода команды checkout.

    Как посмотреть список Git-тегов

    Делается это довольно просто, при помощи команды git tag , после чего все имеющиеся метки будут выведены ниже в алфавитном порядке. Пример:

    $ git tag ver-0.1 ver-1.6 ver-2.5 ver-2.5a ver-2.6

    А что если теги у нас обозначены по-разному и нам нужно вывести только некоторые, с определенной маркировкой? Для этого используются флаги -l или --list и выражение для поиска по шаблону, обозначаемое звездочками __** , между которыми требуется подставить нужные знаки. Допустим, кроме меток из примера выше у нас есть еще такие: ver-1.6xyz, ver-2.5xyz, ver-2.6xyz. Тогда для того, чтобы вывести только их, вводим:

    $ git tag -l *xyz* ver-1.6xyz ver-2.5xyz ver-2.6xyz

    Получаем такой список, где уже нет меток, которые были в первом списке, поскольку они не содержат сочетания символов xyz в своих идентификаторах.

    Переназначение или замена тегов

    Для обновления существующего тега используйте флаг -f , дающий команду на принудительную замену:

    $ git tag -a -f ver-2.5a bf93b7eaa928fd77a55453118313701b04874051

    В данном случае указывается также хеш коммита. Это нужно для того, чтобы программа сопоставила коммит с ID аннотированного тега, после чего весь контент для указанной метки будет переопределен. Но помните, что вся старая информация после переназначения метки будет удалена, поэтому применяйте эту функцию с осторожностью.

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

    Кстати, в официальном канале Simple-Server мы собрали комьюнити из специалистов, которые говорят про IT-тренды, делятся полезными инструкциями и даже приглашают к себе работать.


    Нужен сервер для практики? Закажите VPS на Simple-Server — root-доступ, NVMe, DDoS-защита и поддержка 24/7.

    VPS для проекта

    VPS с root-доступом, NVMe и поддержкой 24/7 на Simple-Server.

    StarterVDS

    490

    в месяц

    1 ядро

    1 ГБ RAM

    20 ГБ NVMe

    • 1 IPv4
    • KVM
    • Root-доступ
    • Безлимитный трафик
    Заказать VPS
    Рекомендуем

    PerformanceVDS

    1190

    в месяц

    2 ядра

    4 ГБ RAM

    60 ГБ NVMe

    • 1 IPv4
    • KVM
    • Root-доступ
    • Базовая DDoS-защита
    Заказать VPS

    Нужна другая конфигурация? Посмотрите все доступные тарифы

    Все тарифы VPS

    Похожие статьи, которые могут быть вам интересны