Ответ
Теги в Git — это статические указатели на конкретные коммиты, используемые для маркировки значимых точек в истории проекта, чаще всего — версий релизов (например, v1.0.3, v2.1.0-rc1). В отличие от веток, теги не перемещаются при новых коммитах.
Типы тегов и их использование:
- Аннотированные теги (Annotated Tags): Полноценные объекты Git, хранящие метаданные: автор тега, дата, сообщение аннотации и контрольную сумму. Рекомендуются для релизов.
git tag -a v1.5.0 -m "Релиз версии 1.5.0 с новым API" git push origin v1.5.0 # Отправка тега в удаленный репозиторий - Легковесные теги (Lightweight Tags): Просто указатель на коммит (как «закладка»). Не содержат дополнительной информации.
git tag v1.5.0-lw
Практическое применение:
- Развертывание (Deployment): Системы CI/CD могут отслеживать теги для автоматического запуска сборки и деплоя соответствующей версии.
- Документирование истории: Позволяют быстро найти код, соответствующий конкретной версии продукта, без запоминания хешей коммитов.
- Создание дистрибутивов: На GitHub/GitLab при создании тега автоматически можно сгенерировать архив исходного кода (Source Code).
Работа с тегами:
# Просмотр всех тегов
git tag -l
# Просмотр информации об аннотированном теге
git show v1.5.0
# Удаление тега локально и на удаленном репозитории
git tag -d v1.0.0-beta
git push origin --delete v1.0.0-beta