Tag ба release
Tag нь тодорхой commit-д байнгын нэр өгөх арга юм. Ихэвчлэн програмын хувилбаруудыг тэмдэглэхэд ашигладаг: v1.0.0, v2.1.3.
Tag гэж юу вэ?
Commit hash (a3f2c1d) нь санахад хэцүү. Tag ашигласнаар тухайн commit-д v1.0.0 гэх мэт утгатай нэр өгч болно.
a3f2c1d ← энэ commit-д "v1.0.0" tag өгнө
Tag-ийн 2 төрөл
Lightweight tag — зүгээр л нэр:
git tag v1.0.0
Annotated tag — нэр + зохиогч + огноо + мессеж. Энэ нь илүү дэлгэрэнгүй тул ашиглахыг зөвлөдөг:
git tag -a v1.0.0 -m "Анхны хувилбар"
Tag үүсгэх
Одоогийн commit-д tag үүсгэх:
git tag -a v1.0.0 -m "Анхны албан ёсны хувилбар"
Өмнөх commit-д tag үүсгэх:
# Эхлээд commit hash-г олно
git log --oneline
# Тухайн commit-д tag өгнө
git tag -a v0.9.0 a3f2c1d -m "Beta хувилбар"
Tag харах
# Бүх tag жагсаах
git tag
# Тодорхой tag-ийн дэлгэрэнгүй мэдээлэл
git show v1.0.0
Хариу:
tag v1.0.0
Tagger: Болд Батаа <bold@example.com>
Date: Mon Jan 15 10:30:00 2024 +0800
Анхны албан ёсны хувилбар
commit a3f2c1d...
Tag-г GitHub руу push хийх
Энгийн git push нь tag-уудыг push хийдэггүй — тусад нь push хийх хэрэгтэй:
# Нэг tag push хийх
git push origin v1.0.0
# Бүх tag-г push хийх
git push --tags
GitHub release үүсгэх
Tag push хийсний дараа GitHub дээр release үүсгэж болно. Release нь хэрэглэгчдэд програмын шинэ хувилбарыг мэдэгдэх албан ёсны арга юм.
Release үүсгэх:
- Repository → Releases хэсэг
- Create a new release товч
- Choose a tag →
v1.0.0сонгоно - Release гарчиг бичнэ:
v1.0.0 — Анхны хувилбар - Release notes (өөрчлөлтийн жагсаалт) бичнэ
- Publish release товч дарна
Сайн release notes-ийн жишээ:
## Шинэ функцүүд
- Нэвтрэх систем нэмэгдсэн
- Dashboard хуудас нэмэгдсэн
## Засагдсан алдаанууд
- Navbar mobile дээр буруу харагдаж байсан засагдсан
## Суулгах
npm install
npm run dev
Semantic versioning (v1.0.0)
Хувилбарын дугааршилтын олон улсын стандарт — MAJOR.MINOR.PATCH:
| Хэсэг | Утга | Жишээ |
| --------- | ---------------------------- | ------------------- |
| MAJOR | Буцаж нийцэхгүй том өөрчлөлт | v1.0.0 → v2.0.0 |
| MINOR | Буцаж нийцэх шинэ функц | v1.0.0 → v1.1.0 |
| PATCH | Алдаа засах | v1.0.0 → v1.0.1 |
Практик жишээ:
v1.0.0 → Анхны хувилбар
v1.0.1 → Нэвтрэх хуудасны алдаа засагдсан
v1.1.0 → Профайл хуудас нэмэгдсэн
v2.0.0 → Бүрэн шинэ дизайн (хуучин API ажиллахгүй)
Tag устгах
# Local tag устгах
git tag -d v1.0.0
# Remote tag устгах
git push origin --delete v1.0.0
Дараагийн хичээлд:
git reset болон git revert — буруу commit-г засах аргуудыг үзнэ.