Esta página se muestra en inglés. Una traducción al español está en curso.
SkillsApr 14, 2026·3 min de lectura

DVC — Data Version Control for Machine Learning

DVC brings Git-like versioning to datasets, models, and ML pipelines. Large files live in S3/GCS/Azure while lightweight metafiles are tracked in Git — giving you reproducible experiments and auditable model lineage.

Listo para agents

Instalación lista para agent

Este activo puede instalarse después de elegir el runtime, revisar el plan y ejecutar el comando correspondiente.

Native · 98/100Política: permitir
Superficie agent
Cualquier agent MCP/CLI
Tipo
Skill
Instalación
Single
Confianza
Confianza: Established
Entrada
step-1.md
Comando de instalación directa
npx -y tokrepo@latest install 696434ff-37b5-11f1-9bc6-00163e2b0d79 --target codex

Ejecutar después de confirmar el plan con dry-run.

TL;DR
DVC versions datasets and ML models with Git-like commands while storing large files in cloud storage.
§01

What it is

DVC (Data Version Control) brings Git-like versioning to datasets, machine learning models, and ML pipelines. Large binary files are stored in remote storage (S3, GCS, Azure, SSH, HDFS) while lightweight pointer files (.dvc files) are tracked in Git. This gives you reproducible experiments, auditable model lineage, and the ability to switch between data versions with git checkout.

DVC targets ML engineers, data scientists, and teams that need to track data and model artifacts alongside code without bloating the Git repository.

§02

How it saves time or tokens

Without DVC, teams resort to naming files model_v2_final_FINAL.pkl, storing data on shared drives with no versioning, or using custom scripts to manage artifacts. DVC integrates with Git to provide dvc push, dvc pull, and dvc checkout commands that work like their Git equivalents for data. Reproducing an experiment from six months ago is a git checkout plus dvc checkout away.

§03

How to use

  1. Install DVC: pip install dvc[s3] (or [gcs], [azure] for your storage backend).
  2. Initialize in a Git repo: git init && dvc init, add a remote: dvc remote add -d storage s3://my-bucket/dvcstore.
  3. Track data: dvc add data/train.csv, commit the .dvc file to Git, and push data: dvc push.
§04

Example

# Initialize DVC in a Git repository
pip install dvc[s3]
git init && dvc init

# Configure remote storage
dvc remote add -d storage s3://my-bucket/dvcstore

# Track a large dataset
dvc add data/train.csv
git add data/train.csv.dvc .gitignore
git commit -m 'track training data'

# Push data to remote storage
dvc push

# On another machine, pull the data
git clone <repo>
dvc pull

# Create a reproducible pipeline
dvc run -n train -d data/train.csv -d train.py -o model.pkl \
  python train.py
§05

Related on TokRepo

§06

Common pitfalls

  • Forgetting to run dvc push after dvc add. The data is tracked locally but not uploaded to remote storage, so teammates cannot pull it.
  • Not committing the .dvc file and updated .gitignore to Git. Without the pointer file in Git history, you lose the ability to reproduce that data version.
  • Using DVC without configuring a remote for team projects. Local-only DVC tracking works for solo use but breaks collaboration.

Preguntas frecuentes

How does DVC handle large files?+

DVC moves large files into a local cache (`.dvc/cache/`) and replaces them with small pointer files (`.dvc` files) that contain a hash. The pointer file is committed to Git. The actual data is stored in a configured remote (S3, GCS, Azure). `dvc pull` downloads data from the remote using the hash.

Can DVC define ML pipelines?+

Yes. DVC pipelines are defined in a `dvc.yaml` file where each stage specifies dependencies (data files, scripts), outputs (models, metrics), and commands. Running `dvc repro` re-executes only the stages whose dependencies have changed, similar to Make.

Does DVC work with any Git hosting?+

Yes. DVC uses Git for metadata (pointer files) and any Git host (GitHub, GitLab, Bitbucket) works. The data storage is separate and configured as a DVC remote. This means you can use GitHub for code and S3 for data without conflicts.

How does DVC compare to Git LFS?+

Git LFS stores large files on the Git server, which can become expensive and slow. DVC stores data on any storage backend you control (S3, GCS, your own server) with no per-file size limits. DVC also adds pipeline tracking and experiment management that Git LFS does not provide.

Can I use DVC for experiment tracking?+

Yes. DVC Experiments lets you run and compare experiments with different parameters. Use `dvc exp run --set-param lr=0.01` to run variations, then `dvc exp show` to compare metrics across experiments in a table. This integrates with Git branches for full reproducibility.

Referencias (3)
  • DVC GitHub— DVC provides Git-like versioning for data and ML models
  • DVC Documentation— Supports S3, GCS, Azure, SSH, and HDFS as remote storage backends
  • DVC Experiments Docs— DVC Experiments for running and comparing ML experiments

Discusión

Inicia sesión para unirte a la discusión.
Aún no hay comentarios. Sé el primero en compartir tus ideas.

Activos relacionados