git tag (lightweight va annotated), tagni push qilish, SemVer MAJOR.MINOR.PATCH, GitHub Release
10-sinfDevOps6-hafta · 17-darsVersiya belgisi
MAJOR.MINOR.PATCH
Nashr
Yo'qolgan commit ni topish uchun qaysi buyruq?
git reflog HEAD harakatlarini ko'rsatadi.Versiya belgisi
git tag v0.9.0
git tag -a v1.0.0 -m "Birinchi barqaror versiya"
git tag -l
git show v1.0.0
git push origin v1.0.0
git tag -d v0.9.0
Tag ni GitHub ga yuborish buyrug'i?
MAJOR.MINOR.PATCH
def bump(v, qism):
major, minor, patch = map(int, v.split("."))
if qism == "major":
return f"{major + 1}.0.0"
if qism == "minor":
return f"{major}.{minor + 1}.0"
return f"{major}.{minor}.{patch + 1}"
print(bump("2.4.1", "minor"))
2.4.1 da xato tuzatilsa, yangi versiya?
Nashr
git tag -a v1.0.0 -m "1.0.0"
git push origin v1.0.0
gh release create v1.0.0 --title "1.0.0" --notes "Birinchi barqaror versiya"
gh release list
gh ni birinchi marta gh auth login bilan ulash kerak. Release notes ni tag nomi emas, o'zgarishlar mazmuni bilan yozing.Release asosida nima turadi?
Release uchun annotated tavsiya etiladi.
Commit ga doimiy belgi
MAJOR.MINOR.PATCH versiyalash
Tag asosidagi nashr sahifasi
Oldingi barqaror versiyaga qaytish
Testlar o'tdi, main toza.
v1.0.0 ni yarating.
GitHub da publish.
| O'zgarish | Oshadi | Misol |
|---|---|---|
| Xato tuzatish | PATCH | 2.4.1 → 2.4.2 |
| Yangi imkoniyat | MINOR | 2.4.2 → 2.5.0 |
| Buzuvchi o'zgarish | MAJOR | 2.5.0 → 3.0.0 |
| Sinov nashri | pre-release | 3.0.0-rc.1 |
| Birinchi barqaror | 1.0.0 | 0.x dan 1.0.0 ga |
Pastga bosing: qoidalar
git tag -a v1.0.0 -m "1.0.0" bajaring.git push origin v1.0.0 bilan yuboring.
git tag version1
git push
git tag -a v1.0.0 -m "1.0.0"
git push origin v1.0.0
Versiya raqami jamoaga o'zgarish xarakterini aytadi.
v1.0.0 annotated tag ni xabar bilan yarating.2.4.1 dan yangi imkoniyat qo'shilsa, qaysi versiya?2.5.0 da API buzildi. Yangi versiya?gh bilan v1.0.0 release yarating.v0.9.0 ga qaytish yo'lini yozing.git tag -a v1.0.0 -m, git push origin v1.0.0.
MAJOR.MINOR.PATCH qoidalari.
GitHub Release va release notes.
Uyga vazifa: Tag, SemVer va release.
Jamoaviy kollaboratsiya
6-hafta · 18-dars