Git LFS (Large File Storage) เป็นส่วนขยายสำหรับการจัดการไฟล์ binary ขนาดใหญ่ (วิดีโอ, dataset, ไฟล์ design, binary ขนาดใหญ่) อย่างมีประสิทธิภาพใน Git Git ถูกออกแบบมาสำหรับ text/source code และจัดการ binary ขนาดใหญ่ได้ไม่ดี ดังนั้น LFS จึงเก็บมันแยกต่างหากในขณะที่เก็บการอ้างอิงที่เบาไว้ใน repository
ปัญหา: Git กับ binary ขนาดใหญ่
Git stores every version of every file in its history (the full content):
→ LARGE BINARY files (videos, datasets, PSDs, big binaries) bloat the repo ENORMOUSLY:
- every change stores another full copy (binaries don't diff well)
- the repo and EVERY clone become huge and slow (clone/fetch download all history)
- history can't be shrunk easily (the large blobs are permanent)
→ Git is great for source code (text, diffable), POOR for large binaries.
