Kodni jamoaga to'g'ri taqdim etamiz va ziddiyatlarni xotirjam hal qilamiz
11-sinfProfessional IT development2-hafta · 5-darsWhat, Why, How va dalillar bilan boyitilgan tavsif
.github/pull_request_template.md va checklist
Uch xil strategiya va ziddiyatni qo'lda yechish
Yangi kod main'ni buzmasligi uchun: tajriba alohida tarmoqda yoziladi.
Yangi tarmoq yaratadi va darhol unga o'tadi.
Tur, qamrov va qisqa tavsif: masalan feat(auth): add login.
Taklifdan asosiy tarmoqqa qo'shilishgacha
Bosqichlar ustiga bosing: izoh chiqadi.
Qaysi muammo yoki Issue yopilmoqda? Closes #14
Aynan nimalar o'zgardi: qisqa punktlar.
Arxitektura qarori, algoritm yoki baza o'zgarishi.
## Nega kerak?
Profil sahifasidagi xatoni tuzatadi.
Closes #15
Pastga bosing: boshqa kalit so'zlar
Vazifani yopadi
Xatoni tuzatganini bildiradi
Muammo hal bo'lganini bildiradi
Skrinshot yoki qisqa GIF ilova qilinadi: reviewer loyihani yig'ib o'tirmaydi.
Terminal logi yoki muvaffaqiyatli test skrinshoti ilova qilinadi.
Hamma bir xil standartda yozadi
Qismlarni bosing yoki ustiga olib boring.
## Tavsif (Description)
<!-- Ushbu PR nima qiladi? -->
## Nima uchun kerak? (Why)
<!-- Masalan: Closes #12 -->
## Asosiy o'zgarishlar
-
## Tekshiruv ro'yxati (Checklist)
- [ ] Kod uslubi (linter) tekshirildi
- [ ] Lokal testlar muvaffaqiyatli o'tdi
- [ ] Maxfiy ma'lumotlar (.env) yo'qligi tekshirildi
Pastga bosing: faylni repoga qo'shamiz
mkdir -p .github
nano .github/pull_request_template.md
git add .github/pull_request_template.md
git commit -m "chore(github): add pull request template"
git push origin main
Squash, Rebase va ziddiyatlarni yechish
Ustiga bosing: tafsilot.
feat: implement user settingsPastga bosing: qachon qaysi biri?
Odatiy zamonaviy standart: feature kichik va toza
Katta subsystem relizlari, Git Flow'da develop ni main'ga qo'shish
Tarix qat'iy chiziqli bo'lishini xohlovchi jamoalar
Yuqori va pastki blokni bosing.
<<<<<<< HEAD
host = "localhost"
=======
host = "127.0.0.1"
>>>>>>> feat/network
host = "127.0.0.1"
VS Code yoki boshqa muharrirda konfliktli faylga qarang.
Ikkala qismni tahlil qiling va to'g'ri kodni belgilang.
<<<<<<<, =======, >>>>>>> qatorlarini qo'lda olib tashlang.
git add fayl, so'ng git commit: merge yakunlanadi.
git switch -c feat/update-text
echo "Versiya 2.0 - feature" > app.txt
git commit -am "feat: update line"
git switch main
echo "Versiya 1.5 - main" > app.txt
git commit -am "fix: hotfix on main"
git merge feat/update-text
# CONFLICT (content): Merge conflict in app.txt
echo "Versiya 2.0 - kelishuv" > app.txt
git add app.txt
git commit -m "merge: resolve conflict"
Open · dev wants to merge 3 commits into main from feat/auth
Why: Closes #14 · What: login tugmasi, callback · Checks: 2 successful
Feature'dagi 10 ta commit main'ga bitta toza commit bo'lib tushishi uchun qaysi strategiya tanlanadi?
Closes #N yozing.Muhokama va sifat eshigi
Why, What, How, dalil
Toza tarix uchun
Qo'lda uyg'unlashtiramiz
Pastga bosing: Bilasizmi?
PR tushunchasini GitHub joriy qilgan. Undan oldin o'zgarishlar elektron pochta orqali .patch fayl bo'lib yuborilgan.
Zamonaviy loyihalarda inson ko'rib chiqishidan oldin botlar PR'dagi xatolarni topib, sharh qoldiradi.