Git LFS (Large File Storage) είναι μια επέκταση για τον αποτελεσματικό χειρισμό μεγάλων δυαδικών αρχείων (βίντεο, σύνολα δεδομένων, στοιχεία σχεδιασμού, μεγάλα δυαδικά αρχεία) στο Git. Το Git είναι σχεδιασμένο για κείμενο/πηγαίο κώδικα και χειρίζεται κακώς μεγάλα δυαδικά αρχεία, οπότε το LFS τα αποθηκεύει ξεχωριστά διατηρώντας ελαφρές αναφορές στο αποθετήριο.
Το πρόβλημα: Git και μεγάλα δυαδικά αρχεία
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.
