Par Anonyme (non vérifié) , 29 avril 2026

LFS n'est pas la seule réponse

Git LFS résout un problème mais en introduit d'autres : infrastructure supplémentaire, frais d'hébergement.

Stockage d'objets avec manifestes

# assets.json
{
  "logo.psd": {
    "sha256": "8a1b...",
    "url": "s3://my-bucket/assets/8a1b.psd"
  }
}
aws s3 cp s3://my-bucket/assets/8a1b.psd ./logo.psd

git-annex

git annex init
git annex add big-file.psd
git commit -m "Add big-file via annex"
git annex copy --to=cloud-remote

DVC pour datasets ML

dvc init
dvc add data/raw
git add data/raw.dvc .gitignore
git commit -m "Track raw dataset with DVC"
dvc push

Submodules pointant vers un repo binaire

git submodule add https://example.com/assets-repo assets
git commit -m "Add assets submodule"

Génération au build

npm run build:assets
# .gitignore: dist/

Sparse checkout pour clones partiels

git clone --filter=blob:none --sparse <url>
cd repo
git sparse-checkout set src docs

Choisir

  • Peu de binaires → manifeste de stockage d'objets.
  • Beaucoup de binaires → git-annex ou LFS.
  • Datasets et modèles ML → DVC.
  • Contenu généré → pipeline de build, pas Git.