Docs/Intermediate/พื้นฐาน Git & Github
Intermediate

พื้นฐาน Git & Github

·35 ครั้งที่อ่าน

มาถึงทักษะที่เปรียบเสมือน "เครื่องไทม์แมชชีน" และ "พื้นที่ทำงานร่วมกัน" ของเหล่านักพัฒนาครับ ในยุค Agentic Coding ทักษะนี้สำคัญมาก เพราะ AI Agents ในปัจจุบัน (เช่น GitHub Copilot Workspace หรือรันเวย์ต่างๆ) สามารถเข้ามาช่วยเราเขียนโค้ดและจัดการไฟล์ในโปรเจกต์ได้โดยตรงผ่าน Git นี่แหละ

1. Git vs GitHub ต่างกันอย่างไร?

  • Git (The Tool): เป็นซอฟต์แวร์ที่ติดตั้งในเครื่องเรา ทำหน้าที่ "บันทึกประวัติการเปลี่ยนแปลง" ของไฟล์ (เหมือนการเซฟเกมเป็นจุดๆ หรือ Version Control)

  • GitHub (The Cloud): เป็นเว็บไซต์ที่เอาไว้เก็บโปรเจกต์ Git ของเราขึ้นไปไว้บนออนไลน์ เพื่อให้คนอื่นมาช่วยดู หรือให้ AI เข้ามาช่วยทำงานได้

2. 4 ขั้นตอนพื้นฐานของ Git (Workflow)

เวลาเราทำงานกับ Git จะมีวงจรชีวิตสั้นๆ ที่ต้องจำดังนี้ครับ:

  1. Modified: คุณแก้ไขโค้ดในเครื่อง

  2. Staging (git add): การ "เลือก" ไฟล์ที่พร้อมจะบันทึก (เหมือนการเอาของใส่ลังก่อนปิดเทป)

  3. Committed (git commit): การ "บันทึก" ลงไปจริงๆ พร้อมเขียนข้อความอธิบายว่าทำอะไรไป

  4. Pushed (git push): การ "ส่ง" สิ่งที่บันทึกไว้ในเครื่อง ขึ้นไปเก็บที่ GitHub

3. คำสั่งที่ต้องใช้บ่อย (Cheat Sheet)

เปิด Terminal หรือ Command Prompt แล้วลองใช้คำสั่งเหล่านี้ครับ:

  • git init : เริ่มต้นใช้งาน Git ในโปรเจกต์นั้น

  • git add . : เลือกไฟล์ทั้งหมดที่แก้ไขเตรียมบันทึก

  • git commit -m "เพิ่มปุ่มสีแดงในหน้าแรก" : บันทึกพร้อมข้อความอธิบาย

  • git push origin main : ส่งโค้ดขึ้น GitHub

  • git pull : ดึงโค้ดเวอร์ชันล่าสุดจาก GitHub ลงมาที่เครื่อง (เผื่อเพื่อนหรือ AI ช่วยแก้ให้)

4. แนวคิดเรื่อง Branch (กิ่งก้าน)

นี่คือจุดเด่นของ Git ครับ เราสามารถสร้าง Branch เพื่อแยกไปลองทำฟีเจอร์ใหม่ๆ โดยไม่กระทบกับโค้ดหลักที่ทำงานได้ปกติ

  • Main Branch: โค้ดที่ใช้งานจริง (Production)

  • Feature Branch: กิ่งที่เราแยกออกมาลองเขียนฟีเจอร์ใหม่ พอเสร็จแล้วค่อยนำมา Merge (รวม) กลับเข้าไปที่ Main

5. ยุค Agentic Coding กับ Git & GitHub

ในยุคนี้ Git ไม่ได้มีไว้แค่เก็บโค้ดอีกต่อไป:

  • AI Code Review: เมื่อคุณ Push โค้ดขึ้น GitHub AI สามารถเข้ามาตรวจและคอมเมนต์จุดที่ควรแก้ได้ทันที

  • GitHub Copilot Extensions: AI สามารถ "อ่าน" ประวัติการ Commit ของคุณเพื่อเข้าใจสไตล์การเขียนโค้ดของคุณได้

  • Automated PRs: AI Agents สามารถสร้าง Pull Request (PR) เพื่อเสนอการแก้ Bug ให้คุณตรวจสอบก่อนกดตกลงรวมโค้ด

สรุปความสำคัญ

การใช้ Git & GitHub เป็น ช่วยให้คุณทำงานร่วมกับคน (และ AI) ได้อย่างเป็นระบบ ถ้าคุณเผลอลบไฟล์สำคัญทิ้ง หรือเขียนโค้ดจนพังไปหมด Git จะช่วยให้คุณ "ย้อนเวลากลับไป" ในจุดที่มันยังดีอยู่ได้เสมอครับ