สอนใช้ GitHub เบื้องต้น พร้อมกรณีศึกษา
เริ่มต้นจากศูนย์ → ใช้งานจริง → ทำงานเป็นทีมได้ทันที
GitHub คืออะไร?
GitHub คือแพลตฟอร์มออนไลน์สำหรับจัดเก็บและจัดการโค้ดด้วยระบบ Version Control (Git)
ใช้งานฟรี มีระบบ แชร์ไฟล์, ตรวจสอบการเปลี่ยนแปลง, ร่วมมือกันในทีม, ส่งงานเป็นเวอร์ชัน และอีกมากมาย
STEP 1: สมัครและติดตั้ง
1. สมัครบัญชีที่ https://github.com
2. ติดตั้ง Git บนเครื่อง
- ดาวน์โหลดได้ที่ https://git-scm.com/downloads
- บน Windows ให้ติดตั้งแบบ default ทุกอย่างได้เลย
- หลังติดตั้ง เสร็จแล้วลองพิมพ์ใน Terminal:
bashคัดลอกแก้ไขgit --version
STEP 2: สร้าง Repository แรก
1. ไปที่ GitHub.com > คลิก “New Repository”
กรอก:
- Repository name:
hello-world
- Description: “My first project with GitHub”
- เลือก: ✅ Initialize with a README
2. คุณจะได้ลิงก์โปรเจกต์ เช่น:
https://github.com/yourname/hello-world
STEP 3: โคลน (Clone) Repo มาที่เครื่อง
bashคัดลอกแก้ไขgit clone https://github.com/yourname/hello-world
cd hello-world
ไฟล์ README.md จะถูกโหลดลงมาด้วย
STEP 4: เพิ่มไฟล์ใหม่และอัปโหลดขึ้น GitHub
1. สร้างไฟล์ Python
echo "print('Hello, GitHub!')" > hello.py
2. บันทึกความเปลี่ยนแปลง
git add hello.py
git commit -m "เพิ่มไฟล์ hello.py"
git push origin main
ตอนนี้บน GitHub จะมีไฟล์ hello.py
แล้ว!
STEP 5: กรณีศึกษา – ทำงานเป็นทีมด้วย Pull Request
สถานการณ์จำลอง:
คุณกับเพื่อนกำลังเขียนเว็บด้วย Python Flask
1. เพื่อน fork โปรเจกต์ของคุณ
คลิก “Fork” บนหน้า GitHub
2. เพื่อน clone repo ของตัวเองมาทำงาน
git clone https://github.com/friend/flask-app
3. เพื่อนแก้โค้ด เพิ่มฟีเจอร์ → commit → push → สร้าง Pull Request (PR)
4. คุณได้รับแจ้ง PR → ตรวจสอบโค้ด → Merge หรือ Comment กลับไป
ผลลัพธ์:
- คุณควบคุมคุณภาพโค้ดก่อนจะเข้า main branch
- ทุกคนเห็นประวัติการแก้ไขและอธิบายได้ว่า “ทำไม” แก้
คำสั่ง Git ที่ควรรู้
คำสั่ง | ความหมาย |
---|---|
git init | เริ่มใช้ git ในโฟลเดอร์ |
git clone URL | โคลน repo มาที่เครื่อง |
git status | ดูไฟล์ที่เปลี่ยน |
git add . | เพิ่มทุกไฟล์ที่เปลี่ยน |
git commit -m "ข้อความ" | บันทึกการเปลี่ยนแปลง |
git push | ส่งขึ้น GitHub |
git pull | ดึงโค้ดล่าสุดจาก GitHub |
git branch | ดู branch ที่มี |
git checkout -b ชื่อbranch | สร้าง branch ใหม่ |
git merge ชื่อbranch | รวม branch เข้าด้วยกัน |
ฟีเจอร์ GitHub ที่น่าสนใจสำหรับมือใหม่
ฟีเจอร์ | ประโยชน์ |
---|---|
README.md | อธิบายโปรเจกต์ของคุณให้คนอื่นเข้าใจ |
Issues | แจ้งปัญหา/ข้อเสนอแนะ |
Pull Requests | ส่งการเปลี่ยนแปลงให้เจ้าของ repo พิจารณา |
Actions | สั่งรันโปรแกรมอัตโนมัติ (เช่น test, deploy) |
Wiki | สร้างเอกสารประกอบโปรเจกต์ |
ตัวอย่างโครงงานเบื้องต้นที่ใช้ GitHub ได้
ประเภทโปรเจกต์ | แนวทางใช้ GitHub |
---|---|
เว็บไซต์ส่วนตัว | แก้ HTML/CSS พร้อมกันหลายหน้า |
โปรแกรม Python | แยก branch สำหรับแต่ละฟีเจอร์ |
งานวิจัย | เก็บโค้ด + Jupyter Notebook + ข้อมูล |
คอร์สเรียน | สร้าง repo สำหรับส่งงานนักศึกษา |
องค์กร | แยก repo ตาม module / microservice |
สรุป
GitHub คือพื้นที่ทำงานของนักพัฒนาในยุคใหม่
ไม่ว่าคุณจะทำโปรเจกต์เดี่ยวหรือกลุ่ม GitHub จะช่วยให้การ จัดเก็บ แบ่งปัน และควบคุมเวอร์ชัน เป็นเรื่องง่ายและมืออาชีพ