Git เป็นระบบควบคุมเวอร์ชันที่ช่วยเก็บประวัติการเปลี่ยนแปลงของโค้ด ผู้เรียนจะฝึกสร้าง repository, stage ไฟล์ และ commit งานอย่างมีความหมาย
Branch ช่วยแยกการพัฒนาฟีเจอร์หรือการแก้ไขปัญหาออกจากงานหลัก เมื่อเสร็จแล้วจึง merge กลับเพื่อรวมงาน
GitHub เป็น Remote Repository สำหรับสำรองโค้ดและทำงานร่วมกัน Pull Request ใช้เสนอการเปลี่ยนแปลง ตรวจโค้ด และพูดคุยก่อนรวมงาน
ทำงานร่วมกันเป็นทีมโดยสร้าง Branch, Commit, Push และเปิด Pull Request สำหรับ Mini Project
ผู้เรียนใช้ Git เป็นเครื่องมือจัดการประวัติ ไม่ใช่เพียงที่เก็บไฟล์ การ commit ควรมีขนาดพอดีและข้อความชัดเจนว่าเปลี่ยนอะไรและเพราะเหตุใด Branch ใช้แยกงานเพื่อให้พัฒนาได้โดยไม่กระทบ main branch
Pull Request ใช้เป็นพื้นที่ตรวจงาน อธิบายการเปลี่ยนแปลง แนบภาพหรือผลทดสอบ และรับข้อเสนอแนะก่อน merge หากเกิด conflict ผู้เรียนต้องอ่านความแตกต่างและรวมโค้ดด้วยความเข้าใจ
สร้าง repository สำหรับ Mini Project ใช้ branch สำหรับ feature อย่างน้อย 1 branch และเปิด Pull Request พร้อมคำอธิบายการเปลี่ยนแปลง
Version Control คือระบบติดตามประวัติการเปลี่ยนแปลงของโค้ด ช่วยให้ย้อนกลับ ตรวจสอบ และทำงานร่วมกันได้อย่างเป็นระบบ
%%{init: {'theme': 'base', 'themeVariables': {'background': '#282828','primaryColor': '#3c3836','primaryTextColor': '#fbf1c7','primaryBorderColor': '#fabd2f','lineColor': '#83a598','secondaryColor': '#504945','tertiaryColor': '#665c54'}}}%%
gitGraph
commit id: "init"
branch feature
checkout feature
commit id: "add feature"
checkout main
merge feature
# สร้าง branch สำหรับฟีเจอร์ใหม่
git switch -c feature-login
# ตรวจไฟล์ที่เปลี่ยนแปลง
git status
# บันทึกงานพร้อมข้อความที่ชัดเจน
git add .
git commit -m "Add login validation"
| คำสั่ง | จุดประสงค์ |
|---|---|
git status |
ตรวจสถานะไฟล์ |
git add |
เตรียมไฟล์เข้า commit |
git commit |
บันทึก snapshot |
git branch |
จัดการสาขา |
git merge |
รวมงาน |