Da Anonimo (non verificato) , 29 Aprile 2026

Perche Git fatica con file grandi

Git memorizza snapshot completi di oggetti. Quando si committa un binario da 100 MB, l'intero 100 MB viene aggiunto al repo.

Cosa fa LFS

Git Large File Storage (LFS) sostituisce file grandi nel working tree con piccoli file di puntatore. Il contenuto vero vive su un server LFS separato.

Installazione

# macOS / Homebrew
brew install git-lfs

# Debian / Ubuntu
sudo apt install git-lfs

git lfs install

Tracciare i file

git lfs track "*.psd"
git lfs track "*.mp4"
git lfs track "assets/raw/**"
git add .gitattributes
git commit -m "Track binaries with LFS"

Verificare il tracking

git lfs ls-files
git lfs status

Migrare file esistenti

git lfs migrate import --include="*.psd,*.mp4" --everything

Quote e prezzi

GitHub da 1 GB di storage e 1 GB di banda mensile gratuiti.

Clonare con LFS

git clone https://git.example.com/repo.git
git lfs pull
GIT_LFS_SKIP_SMUDGE=1 git clone <url>

Insidie comuni

  • Dimenticare di committare .gitattributes.
  • Tracciare dopo aver committato.
  • Gli oggetti LFS vivono in .git/lfs.