1 มิ.ย. เวลา 12:20 • การศึกษา
Git By Shoper Gamer

Repository คืออะไร

โดย
ในโลกของการพัฒนาโปรแกรม และ การจัดการข้อมูล Repository (Repo) เป็นแนวคิดพื้นฐานที่สำคัญ โดยเฉพาะเมื่อทำงานร่วมกับระบบควบคุมเวอร์ชัน (Version Control System - VCS) เช่น Git, SVN หรือ Mercurial Repository ทำหน้าที่เป็น "คลังเก็บข้อมูล" ที่บันทึกประวัติการเปลี่ยนแปลงของไฟล์ และ โค้ดทั้งหมด ทำให้ทีมพัฒนาสามารถจัดการโครงการได้อย่างมีประสิทธิภาพ
ในบทความนี้ เราจะมาทำความเข้าใจว่า Repository คืออะไร ทำงานอย่างไร มีกี่ประเภท อะไรคือประโยชน์ และ ตัวอย่างการใช้งาน
  • ​Repository คืออะไร
Repository (Repo) คือ พื้นที่เก็บข้อมูล (Storage) ที่ใช้บันทึกไฟล์ โค้ด และ ประวัติการเปลี่ยนแปลงทั้งหมดของโครงการ โดยระบบควบคุมเวอร์ชัน (VCS) จะจัดการข้อมูลในรูปแบบโครงสร้างที่สามารถย้อนกลับ เปรียบเทียบ หรือ กู้คืนเวอร์ชันเก่าได้
  • ​ลักษณะสำคัญของ Repository
- เก็บไฟล์ และ ประวัติการแก้ไขทั้งหมด
- สามารถสร้าง Branch (สาขา) เพื่อแยกการพัฒนาฟีเจอร์ต่างๆ
- รองรับการทำงานร่วมกันของทีมพัฒนา
- บันทึกว่าใครแก้ไขไฟล์อะไร เมื่อไหร่ และ ทำไม
  • ​Repository ทำงานอย่างไร
Repository ทำงานร่วมกับ Version Control System (VCS) โดยมีกลไกหลักดังนี้:
1. เก็บประวัติการเปลี่ยนแปลง (Commit History)
- ทุกครั้งที่แก้ไขไฟล์ และ บันทึก (Commit) ระบบจะเก็บเป็น "Snapshot" ของการเปลี่ยนแปลง
2. จัดการ Branching & Merging
- สามารถสร้าง Branch เพื่อพัฒนาฟีเจอร์ใหม่โดยไม่กระทบโค้ดหลัก
- เมื่อเสร็จแล้วสามารถ Merge (รวม) Branch กลับสู่ Repo หลัก
3. ตรวจสอบ และ แก้ไข Conflict
- หากมีหลายคนแก้ไขไฟล์เดียวกัน Repo จะช่วยตรวจสอบ และ แก้ไขความขัดแย้ง
4. ซิงค์ข้อมูลกับ Remote Repository
- ในระบบ Distributed VCS (เช่น Git) สามารถ Push/Pull ข้อมูลกับ Remote Repo เช่น GitHub, GitLab
  • ​ประเภทของ Repository
Repository แบ่งได้เป็น 2 ประเภทหลัก
☆ 1. Local Repository
- เก็บอยู่ในเครื่องคอมพิวเตอร์ของผู้ใช้
- เหมาะสำหรับงานส่วนตัว หรือ ทดลองพัฒนา
- ตัวอย่าง: Git Repository บนเครื่องเรา
☆ 2. Remote Repository
- เก็บไว้บนเซิร์ฟเวอร์กลาง (เช่น GitHub, GitLab, Bitbucket)
- ช่วยให้ทีมพัฒนาเข้าถึง และ ทำงานร่วมกันได้
- ตัวอย่าง: โปรเจกต์บน GitHub
  • ​ประโยชน์
1. จัดเก็บ และ จัดการโค้ดอย่างเป็นระบบ
2. ย้อนกลับไปเวอร์ชันเก่าได้เมื่อเกิดข้อผิดพลาด
3. ทำงานเป็นทีมได้อย่างมีประสิทธิภาพ
4. ป้องกันการสูญหายของข้อมูล (Backup)
5. ติดตามการเปลี่ยนแปลงได้อย่างละเอียด (ใครแก้ไขอะไร เมื่อไหร่)
  • ​ตัวอย่างการใช้งาน
1. สร้าง Local Repository ด้วย Git
# สร้าง Repository ใหม่ในโฟลเดอร์ปัจจุบัน
git init
# เพิ่มไฟล์ไปยัง staging area
git add .
# บันทึกการเปลี่ยนแปลง (Commit)
git commit -m "First commit"
☆ 2. เชื่อมต่อกับ Remote Repository (GitHub)
# เชื่อมต่อ Local Repo กับ Remote Repo บน GitHub
# อัพโหลดโค้ดขึ้น GitHub
git push -u origin main
☆ 3. ดึงข้อมูลจาก Remote Repository
# ดึง Repository จาก GitHub มาไว้ในเครื่อง
# อัพเดทโค้ดจาก Remote Repository
git pull origin main
✏️ Shoper Gamer
Credit :
👇
  • ​https://thiti.dev/blog/62/
  • ​https://tinyurl.com/wxkaeekm
  • ​https://tinyurl.com/mtztmt68

ดูเพิ่มเติมในซีรีส์

โฆษณา