Pull Request
Pull Request (PR) нь өөрийн branch дээрх өөрчлөлтийг main branch-д нэгтгэхийг хүсэх механизм юм. Багийн хамтын ажиллагааны үндэс суурь.
Pull Request яагаад хэрэгтэй вэ?
Шууд main branch-д push хийхийн оронд PR ашигладаг учир:
- Хамтрагчид кодыг шалгах боломжтой болдог
- Алдааг merge хийхээс өмнө олдог
- Өөрчлөлтийн түүх тодорхой хадгалагддаг
PR үүсгэх — алхам алхмаар
Алхам 1 — Feature branch үүсгэж, ажил хийнэ:
git checkout -b feature/login
# ... код бичнэ ...
git add .
git commit -m "feat: нэвтрэх хуудас нэмэх"
Алхам 2 — GitHub руу push хийнэ:
git push origin feature/login
Алхам 3 — GitHub дээр PR үүсгэнэ:
- Repository хуудасны дээд хэсэгт "Compare & pull request" товч гарна
- Эсвэл Pull requests таб → New pull request
base: main←compare: feature/loginгэж тохируулна- Гарчиг болон тайлбар бичнэ
- Create pull request товч дарна
Сайн PR description бичих
Муу PR тайлбар:
Login нэмлээ
Сайн PR тайлбар:
## Юу хийгдсэн
Нэвтрэх хуудас нэмэгдсэн. И-мэйл, нууц үгээр нэвтрэх боломжтой.
## Яагаад
Issue #12 — нэвтрэх системгүй байсан.
## Тест хийх арга
1. /login хуудас руу орно
2. И-мэйл: test@example.com, нууц үг: 123456
3. Амжилттай нэвтэрвэл dashboard руу шилжинэ
## Screenshot
[Нэвтрэх хуудасны зураг]
Code review
PR үүсгэсний дараа хамтрагчид кодыг шалгана.
Reviewer-ийн үүрэг:
Files changed таб → мөр бүрийг шалгана
Тайлбар үлдээх: тодорхой мөрөн дээр + товч дарж comment бичнэ.
Comment-ийн төрлүүд:
Comment— санал, асуултApprove— код зөв, merge хийж болноRequest changes— засах зүйл байна
Approve ба merge
Reviewer approve хийсний дараа PR-ийг merge хийнэ:
Merge хийх 3 арга:
| Арга | Тайлбар | | -------------------- | ---------------------------------------------- | | Merge commit | Бүх commit-ийг хадгалж, нэг merge commit нэмнэ | | Squash and merge | Бүх commit-ийг нэг болгож нэгтгэнэ | | Rebase and merge | Commit-уудыг шугаман байдлаар нэгтгэнэ |
Ихэнх багт Squash and merge ашигладаг — main branch цэвэр хэвээр үлдэнэ.
Draft PR
Код дуусаагүй байхад хамтрагчдаасаа эрт санал авахыг хүсвэл Draft PR үүсгэнэ:
New pull request → "Create draft pull request"
Draft PR merge хийх боломжгүй — бэлэн болмогц "Ready for review" товч дарна.
PR-ийг local-д татаж шалгах
Reviewer байвал PR-ийн кодыг өөрийн компьютерт татаж тест хийж болно:
# PR-ийн branch татах
git fetch origin
git checkout feature/login
# Шалгасны дараа өмнөх branch руу буцна
git checkout main
Дараагийн хичээлд:
Fork хийх болон open source проектод хувь нэмэр оруулах workflow-г үзнэ.