Data & model version control · Git for data · pipelines · experiments · verified against DVC 3.67.x (2026)

DVC cheat sheet

DVC (Data Version Control) is Git for large files, datasets, and models. It stores tiny .dvc pointers in Git while the real data lives in a remote (S3, GCS, SSH…) — so git checkout + dvc checkout gives you the exact data for any commit. Wire steps into reproducible pipelines (dvc.yaml), track params/metrics/plots, and run & compare experiments without polluting Git. Targets DVC 3.67.x, Python 3.9+.

data versioning sharing data pipelines experiments workflow & ecosystem gotcha most common

Verified 2026-08-31 against the official docs at dvc.org/doc (DVC 3.67.1, released 2026-03-31; Python 3.9–3.14). DVC works alongside Git in any repo; commands mirror Git's mental model (add/push/pull/checkout/status).

Outline

Version data with dvc add + a remote; build reproducible pipelines in dvc.yaml; run & compare experiments. Git tracks the pointers, DVC tracks the data.

Data versioning

  1. 1Install & init
  2. 2Track data (dvc add)
  3. 3Remotes & push/pull

Sharing data

  1. 4Access & import data
  2. 5Versioning & switching

Pipelines

  1. 6Define stages (dvc.yaml)
  2. 7Run & reproduce

Experiments

  1. 8Params, metrics & plots
  2. 9Experiments (dvc exp)
  3. 10DVCLive

Workflow & ecosystem

  1. 11Git integration & workflow
  2. 12Ecosystem & tools

Data Versioning

Put big files under version control without bloating Git.

1Install & initset up
2Track data (dvc add)the core idea
3Remotes & push/pullstore the bytes

Sharing Data

Reuse datasets across projects and jump between data versions.

4Access & import datareuse datasets
5Versioning & switchingtime travel

Pipelines

Codify your workflow as stages so results rebuild only when inputs change.

6Define stages (dvc.yaml)the DAG
7Run & reproduceonly what changed

Experiments

Track params & metrics, run many experiments, and compare them — no Git branch spam.

8Params, metrics & plotsmeasure
9Experiments (dvc exp)iterate fast
10DVCLivelog from code

Workflow & Ecosystem

How DVC sits next to Git, and the tools around it.

11Git integration & workflowtwo tools, one repo
12Ecosystem & toolsthe wider stack

Worth memorizing

dvc initset up DVC inside a Git repo
dvc addtrack a file/dir -> .dvc pointer
.dvc pointergoes to Git; the bytes go to the remote
remote add -dS3/GCS/Azure/SSH storage
push / pullupload / download data (like git)
git checkout + dvc checkoutrestore exact data state
dvc.yamlstages: cmd/deps/outs/params/metrics
dvc reprorerun only changed stages (dvc.lock)
dvc exp runexperiment w/ --set-param, no branch spam
dvc exp showcompare params & metrics in a table
dvclive Live()log metrics/plots from training code
import / dvc.apireuse tracked data across repos