AXV

GitHub Flow

GitHub Flow bosqichlari, feature branch, Pull Request, code review, GitKraken va gh CLI

10-sinfDevOps6-hafta · 18-dars

Bugun nimalarni o'rganamiz?

GitHub Flow

Oddiy jarayon

PR va code review

Jamoa tekshiruvi

CLI va GitKraken

Ikki yo'l

Takrorlash

Xato tuzatilsa SemVer da qaysi raqam oshadi?

PATCH.
01

GitHub Flow

Oddiy jarayon

GitHub Flow

Branch Commit Pull Request Reviewva Merge main hech qachon buzilmaydi

Branch nomlash


main                   # barqaror
feature/login-api      # yangi funksiya
bugfix/navbar          # kichik tuzatish
hotfix/payment-error   # productiondagi shoshilinch xato
release/v2.1           # versiya tayyorlash
  
Branch nomi nima qilinayotganini aytsin: feature/login-api, fix1 emas. Bitta branch — bitta vazifa.

Mini-test

GitHub Flow da main qanday bo'lishi kerak?

main har doim deploy qilishga tayyor.
02

PR va code review

Jamoa tekshiruvi

PR hayoti

Push PR ochish Review Merge Har o'zgarish kamida bitta ko'z orqali o'tadi

Muallif tomoni


git switch -c feature/hello-button
git add .
git commit -m "feat: add hello button"
git push -u origin feature/hello-button
gh pr create --fill
gh pr checks
  
Commit xabarida qisqa prefiks (feat:, fix:, docs:) review ni osonlashtiradi. PR kichik bo'lsin: katta PR ni hech kim diqqat bilan o'qimaydi.

Mini-test

Review natijasi qaysi biri EMAS?

Uchta qaror: approve, request changes, comment.
03

CLI va GitKraken

Ikki yo'l

Reviewer tomoni

pr checkout Kodni sinash pr review pr merge Sinab ko'rmasdan tasdiqlamang

Reviewer buyruqlari


gh pr list
gh pr checkout 12
gh pr review 12 --approve
gh pr merge 12 --squash --delete-branch
git switch main && git pull
  
--squash PR dagi barcha commit larni bittaga aylantiradi. GitKraken da ham xuddi shu: PR ni oching, tekshiring va Merge ni bosing.

Mini-test

gh pr checkout 12 nima qiladi?

PR ni lokalda sinash uchun oladi.

CLI va GitKraken

CLI (git, gh)

Tez, skriptlanadi, serverda ishlaydi
VS

GitKraken

Grafik tarix, tugmalar, boshlovchilarga qulay

Natija bir xil: branch, PR, merge.

Atamalar. Bosing

PR

bosing

Pull Request: o'zgarishni ko'rib chiqish so'rovi

Review

bosing

Hamkasbning kod tekshiruvi

feature branch

bosing

Bitta vazifa uchun alohida branch

squash merge

bosing

PR commit larini bittaga birlashtirish

Jamoaviy ish

1. Branch

Vazifa uchun feature/...

2. PR

Push qilib, PR oching.

3. Review

Tasdiq va merge.

GitHub Flow va Git Flow

MezonGitHub FlowGit Flow
Jamoakichikkatta
Branch larmain + featuremain, develop, release, hotfix
Murakkablikoddiymurakkabroq
Deploymain dan tez-tezrejali release lar
Tavsiyao'quv loyihalarenterprise

Pastga bosing: strategiyalar

PR ochish

  1. git switch -c feature/x bilan branch yarating.
  2. Commit qiling va git push -u origin feature/x.
  3. gh pr create --fill yoki GitHub da Compare & pull request.

Branch xatosi


git commit -m "fix"  # main da
  

Branch xatosi


git switch -c bugfix/navbar
git commit -m "fix: navbar"
  

Jamoaviy ish raqamlarda

0
ta bosqich: branch dan deploy gacha
0
ta review qarori: approve, changes, comment
0
ta branch turi: feature, bugfix, hotfix, release

Har bir vazifa alohida branch da bajariladi.

Amaliy topshiriq 20 daqiqa

OsonBranch yarating: feature/login-api branch ini yarating.
OsonPush qiling: Branch ni birinchi marta GitHub ga yuboring.
O'rtaPR oching: gh bilan PR oching.
O'rtaNomni tuzating: fix1 branch nomini yaxshilang.
QiyinReview: Hamkasb PR ini lokalda sinab, tasdiqlang.
BonusStrategiya: Nega katta jamoa Git Flow ni tanlaydi?

Dars xulosasi

GitHub Flow

Branch → PR → review → merge.

Nomlash

feature/, bugfix/, hotfix/.

Vositalar

git, gh va GitKraken.

Uyga vazifa: GitHub Flow va PR.

Keyingi dars: GitHub Actions asoslari

Birinchi workflow

7-hafta · 19-dars