Перейти к содержимому
davidka.net > 💻 🧠 Код 1001 > 🧪📓 Без категории > 🏷 Версионирование в Git с помощью тегов: как зафиксировать релиз и начать новую разработку

🏷 Версионирование в Git с помощью тегов: как зафиксировать релиз и начать новую разработку

  • автор:

В этой статье:

  • Что такое тег в Git и для чего он нужен
  • Как правильно завершить текущую версию
  • Как начать работу над следующей
  • К какому коду относится новый тег — к старому или новому?

🔍 Что такое тег в Git?

Git-тег — это метка, прикреплённая к конкретному коммиту.
Он фиксирует состояние репозитория в определённый момент, обычно для обозначения версии (релиза).

⚠️ Важно: тег относится только к уже существующему коммиту, а не к будущему коду.


🧭 Типичный сценарий работы с версиями

ЭтапДействие
Завершили работу над версиейСоздали коммит
Зафиксировали её тегомМетка v0.1.0
Начали разработку новой версииНовые коммиты без тега
Готов следующий релизНовый тег v0.2.0

🏁 Завершение версии: фиксация кода и создание тега

1️⃣ Заверши текущие изменения

git add .
git commit -m "Finalize version 0.1.0"

2️⃣ Создай тег для релиза

git tag -a v0.1.0 -m "Release 0.1.0"
git push origin v0.1.0

✅ Теперь тег v0.1.0 жёстко “прикреплён” к состоянию проекта — это зафиксированная версия.


🚀 Начало новой версии

После того как релиз отмечен тегом, можно продолжать разработку:

git commit -m "Start version 0.2.0 development"

Когда новая версия готова — создаём следующий тег:

git tag -a v0.2.0 -m "Release 0.2.0"
git push origin v0.2.0

❗ К какому коду относится тег?

ТегОтносится к
v0.1.0Стабильной версии, которую ты завершил
v0.2.0Новому состоянию после изменений
Нет тегаЧерновая/текущая разработка

🧠 Тег никогда не предназначен для “будущей” версии. Он всегда фиксирует прошлую и завершённую.


📚 Дополнительные советы

  • Используй семантическое версионирование: MAJOR.MINOR.PATCH (например, 1.4.2)
  • Добавляй описание в тег (-m), чтобы помнить, что в этом релизе изменилось
  • Просмотри все теги:
git tag
  • Откатись к версии через тег:
git checkout v0.1.0

🏆 Итог

ВопросОтвет
Когда ставить тег?Когда версия закончена
Что обозначает тег?Конкретное состояние кода (релиз)
Что после тега?Новая разработка и будущая версия

Хочешь продолжение?
📦 Могу подготовить шаблон CHANGELOG, автоматизацию семантических версий или GitHub Actions для релизов.
Сказать? 👇

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *