git tag — Отметка вех
Теги — это постоянные закладки в вашей истории Git. Они помечают определённые коммиты как важные — обычно для релизов, версий или вех.
Два типа тегов
Легковесные теги
Легковесный тег — это просто имя, указывающее на коммит. Представьте его как ветку, которая никогда не перемещается.
git tag v1.0
Аннотированные теги
Аннотированный тег — это полноценный объект Git. Он хранит имя автора, email, дату и сообщение. Используйте их для релизов.
git tag -a v1.0 -m "First stable release"
Просмотр и изучение тегов
git tag # список всех тегов
git tag -l "v1.*" # список тегов, соответствующих шаблону
git show v1.0 # показать детали тега и отмеченный коммит
Пометка прошлых коммитов
Вы можете пометить тегом любой коммит, не только текущий:
git tag -a v0.9 -m "Beta release" abc1234
Отправка тегов
Теги не отправляются по умолчанию. Вы должны отправить их явно:
git push origin v1.0 # отправить один тег
git push origin --tags # отправить все теги
Удаление тегов
git tag -d v1.0 # удалить локально
git push origin --delete v1.0 # удалить с удалённого репозитория
Попробуйте!
Потренируйтесь создавать и управлять тегами:
- Инициализируйте репозиторий и сделайте несколько коммитов:
git init && echo "v1" > app.txt && git add app.txt && git commit -m "First feature" - Добавьте ещё работы:
echo "v2" >> app.txt && git add app.txt && git commit -m "Second feature" - Создайте легковесный тег на текущем коммите:
git tag v0.2 - Создайте аннотированный тег:
git tag -a v0.2.1 -m "Release candidate" - Пометьте первый коммит:
git tag -a v0.1 -m "Initial release" HEAD~1 - Выведите список всех тегов:
git tag - Изучите аннотированный тег:
git show v0.2.1
Когда использовать теги
- Релизы —
v1.0.0,v2.1.3(используйте аннотированные теги) - Маркеры деплоя —
deploy-2024-01-15(легковесные подойдут) - Вехи —
beta,rc1,stable
Теги позволяют легко переключиться на любой релиз: git checkout v1.0 перенесёт вас точно в эту точку истории.