Git LFS (Large File Storage) è un'estensione per gestire in modo efficiente i file binari di grandi dimensioni (video, dataset, asset di design, binari di grandi dimensioni) in Git. Git è progettato per il codice testo/sorgente e gestisce male i binari di grandi dimensioni, quindi LFS li memorizza separatamente mantenendo riferimenti leggeri nel repository.
Il problema: Git e i binari di grandi dimensioni
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.
