skillfed

dvc

Git for data scientists - manage your code and data together

dvc v3.67.1 2.6M downloads/30d#2,964 on PyPI15,818
Permissive license Apache-2.0 Active released

What it is and what it does

DVC is a version control system for data and machine learning models that integrates with Git. It lets you store data artifacts and models outside your repository while keeping metadata in Git, similar to Git-LFS but without requiring a server. You define reproducible pipelines (computational graphs) that specify how to build models from code, data, and commands, then run only the steps affected by your changes.

The tool supports local experiment tracking—you can prepare and run many experiments, compare their results by hyperparameters and metrics, and visualize performance plots. It works with multiple remote storage backends (S3, Azure, Google Cloud, SSH, etc.) for sharing and backing up your data cache. The package has 42 runtime dependencies including celery, networkx, hydra-core, and fsspec, enabling distributed task execution and flexible storage integration.

Use it for:

  • Version and share large datasets and trained models with team members using existing Git hosting (GitHub, GitLab)
  • Build reproducible ML pipelines that automatically track which steps need to re-run when code or data changes
  • Run and compare multiple experiments locally, filtering results by hyperparameters and metrics without external servers
  • Integrate data pipelines with CI/CD workflows to automatically reproduce experiments on code changes
  • Store data in cloud storage (S3, Azure, GCS) while keeping version metadata in Git for cost-effective large-scale projects

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

DVC is a command-line tool for versioning data and models alongside code, running reproducible machine learning pipelines, and tracking experiments locally using Git.

Yes. DVC is actively maintained, has low install friction, and solves a real problem for ML teams managing data versioning and reproducible pipelines. The Apache-2.0 license is permissive. No known vulnerabilities. The large dependency tree (42 packages) is justified by its feature set, and optional storage backends let you add only what you need. Suitable for both individual data scientists and collaborative teams.

Install

dvc on PyPI

pip

pip install dvc

uv

uv add dvc

poetry

poetry add dvc

Installing dvc

Before you install

Low install friction with a pure-Python wheel. Actively maintained with recent commits and a large community (15818 stars). Supports Python 3.9 through 3.14. Optional storage-specific dependencies (s3, gs, azure, ssh) are available for cloud integration.

License in practice

Apache-2.0 permissive license allows commercial and private use with minimal restrictions; you must include a copy of the license and note any modifications.

Quickstart

pip install dvc

import dvc.api

# Track data in DVC
# dvc add data.csv
# dvc push  # to remote storage

# Or use CLI: dvc init, dvc add, dvc run, dvc repro

Requires Python 3.9 or later. Optional cloud storage backends (s3, gs, azure, ssh) must be installed separately if using remote storage.

Verify before relying

  • Whether DVC's experiment tracking requires external servers or works entirely locally as claimed
  • Performance characteristics when working with very large datasets or complex pipelines
  • Specific Git hosting platforms tested and officially supported for experiment collaboration

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (>=3.9)
Install friction low — pure-Python wheel
Runtime dependencies 42 — attrs, celery, colorama, configobj, distro, dpath, dulwich, dvc-data, dvc-http, dvc-objects, dvc-render, dvc-studio-client, dvc-task, flatten-dict, flufl.lock, fsspec, funcy, grandalf, gto, hydra-core, iterative-telemetry, kombu, networkx, omegaconf, packaging, pathspec, platformdirs, psutil, pydot, pygtrie
Maintenance actively maintained — 136 days since the last release
Last repo commit
First released
Downloads 2,627,704/month — #2,964 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: dvc-3.67.1-py3-none-any.whl

Keywords: ai, collaboration, data-science, data-version-control, developer-tools, git, machine-learning, reproducibility

Development Status :: 4 - BetaProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: 3.9

Tags

data version controlmachine learning pipeline managementexperiment tracking gitreproducible ml workflowsdata and model versioningml experiment comparisongit for data scientists
ml-workflowdata-versioningexperiment-tracking

More Artificial Intelligence packages