Dark mode
Submodules
Git Submodules คือฟีเจอร์ที่ให้เรานำ repository อื่นมาแทรกในโปรเจกต์ของเราได้ เหมาะกับการ reuse code หรือใช้ library ภายนอกแบบแยกอิสระ เช่น มีโปรเจกต์หลักกับโปรเจกต์ย่อยที่ต้อง sync กัน
ใช้เมื่อไหร่?
- ต้องการดึง repo อื่นมาเป็นส่วนหนึ่งของโปรเจกต์ (เช่น library, component)
- ต้องการให้แต่ละส่วนแยกประวัติและพัฒนาอิสระ
ตัวอย่างการใช้งาน
เพิ่ม submodule
bash
git submodule add https://github.com/username/library.git libs/library
clone repo ที่มี submodule
bash
git clone --recurse-submodules <repo-url>
หรือ clone ปกติแล้วตามด้วย
bash
git submodule update --init --recursive
อัปเดต submodule ให้เป็นเวอร์ชันล่าสุด
bash
git submodule update --remote
ตัวอย่างสถานการณ์จริง
"มีโปรเจกต์หลักกับโปรเจกต์ UI ที่แยกกันพัฒนา ใช้ submodule เชื่อม repo ทั้งสองให้ sync กันง่ายขึ้น"
Submodules เหมาะกับงานที่ต้องการแยก repository แต่ยังคงเชื่อมโยงกัน