Por Anónimo (no verificado) , 29 Abril 2026

LFS no es la única respuesta

Git LFS resuelve un problema pero introduce otros: infraestructura extra, tarifas de hosting, y una dependencia del servidor que debe estar online para clones.

Almacenamiento de objetos con manifiestos

# 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 para datasets ML

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

Submódulos apuntando a un repo binario

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

Generación en tiempo de build

npm run build:assets
# .gitignore: dist/

Sparse checkout para clones parciales

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

Eligiendo

  • Pocos binarios, actualizaciones ocasionales → manifiesto de almacenamiento de objetos.
  • Muchos binarios, historia profunda → git-annex o LFS.
  • Datasets y modelos ML → DVC.
  • Contenido generado → pipeline de build, no Git.