Darsliklar GIT Tag (versiyalar)

GIT GIT Tag (versiyalar)

git tag — muhim commit’larni belgilab qo’yadigan buyruq. Loyihaning ma’lum bir holati — masalan, rasmiy chiqarilgan versiyasi (v1.0) — belgilanishi kerak. Teglar aynan shu vazifani bajaradi: ular tarixdagi muhim nuqtalarga “yorliq” qo’yadi va ularga oson qaytish imkonini beradi.

git tagma’lum commit’ga o’zgarmas nom (yorliq) beradigan buyruq. U asosan dastur versiyalarini (release) belgilashda ishlatiladi.

Teg yaratish

git tag joriy commit’ga yorliq qo’yadi. Odatda versiya nomi beriladi:

git tag v1.0
[v1.0 tegi yaratildi]

v1.0 — joriy commit’ga qo’yilgan yorliq. Endi bu commit’ga hash o’rniga oddiy v1.0 nomi bilan murojaat qilish mumkin. Bu dasturning birinchi rasmiy versiyasini belgiladi.

Izohli teg

Professional loyihalarda izohli teg (-a) ishlatiladi — u xabar, muallif va sanani saqlaydi:

git tag -a v1.0 -m "Birinchi barqaror versiya"
[v1.0 izohli teg yaratildi: "Birinchi barqaror versiya"]

-a v1.0 -m "..." — izohli teg yaratdi. Bu oddiy tegdan farqli o’laroq, versiya haqida to’liq ma’lumot saqlaydi. Rasmiy chiqarilishlar uchun aynan shu tavsiya etiladi.

Teglarni ko’rish va boshqarish

Teg buyruqlarini jadvalda ko’ramiz:

Buyruq Vazifasi
git tag barcha teglar ro’yxati
git tag -a v1.0 -m "..." izohli teg
git show v1.0 teg tafsilotlari
git tag -d v1.0 tegni o’chiradi
git push origin v1.0 tegni bulutga yuboradi

Teglarni bulutga yuborish

Muhim nozik nuqta: git push teglarni avtomatik yubormaydi — ularni alohida yuborish kerak:

git push origin v1.0
To https://github.com/uzbekdevs/loyiha.git
 * [new tag]         v1.0 -> v1.0

git push origin v1.0 tegni bulutga yubordi. Barcha teglarni bir yo’la yuborish uchun git push --tags ishlatiladi. GitHub’da teglar “Releases” sifatida ko’rinadi.

Semantik versiyalash

Teglarda odatda semantik versiyalash ishlatiladi: vMAJOR.MINOR.PATCH (masalan, v2.1.3). MAJOR — katta o’zgarish, MINOR — yangi funksiya, PATCH — xato tuzatish. Bu tizim foydalanuvchilarga versiyalar orasidagi farqni tushunishga yordam beradi.

Xulosa

Bu bo’limda git tag bilan versiyalarni belgilash, izohli teg (-a), teglarni bulutga yuborish va semantik versiyalashni ko’rib chiqdik. Teglar — dastur chiqarilishlarini belgilashning quroli. Keyingi darsda Git ish oqimlariga (workflow) o’tamiz.