Skip to main content
HomeMachine Learning

Course

Introduction to Data Versioning with DVC

IntermediateSkill Level
4.7+
342 reviews
Updated 06/2025
Explore Data Version Control for ML data management. Master setup, automate pipelines, and evaluate models seamlessly.
Start Course for Free
DVCMachine Learning3 hr12 videos35 Exercises2,500 XP3,331Statement of Accomplishment

Create Your Free Account

or

By continuing, you accept our Terms of Use, our Privacy Policy and that your data is stored in the USA.

Loved by learners at thousands of companies

Group

Training 2 or more people?

Try DataCamp for Business

Course Description

This course offers a comprehensive introduction to Data Version Control (DVC), a tool designed for efficient management and versioning of machine learning data. You will get an understanding of the machine learning product lifecycle, differentiating data versioning from code versioning and exploring DVC’s features and use cases.

Exploring DVC features

You will understand the motivations behind data versioning, the machine learning lifecycle, and DVC’s distinct features and use cases. You will also learn about DVC setup, covering installation, repository initialization, and the .dvcignore file. You will explore DVC cache and staging files, learn to add and remove files, manage caches, and understand the underlying mechanisms. You will learn about DVC remotes, explain the distinction between DVC and Git remotes, add remotes, list them, and modify them. You will learn to interact with remotes, push and pull data, check out specific versions, and fetch data to the cache.

Automate and evaluate

You will be motivated to automate ML pipelines, emphasizing modularization of code and the creation of a configuration file. You will be introduced to DVC pipelines as directed acyclic graphs, with hands-on experience in adding stages and their inputs and outputs. You will practice executing these pipelines efficiently to enable different use cases in machine learning model training. The course concludes with a focus on evaluation, showcasing how metrics and plots are tracked in DVC.

Prerequisites

Supervised Learning with scikit-learnIntroduction to Git
1

Introduction to DVC

This chapter provides a comprehensive introduction to Data Version Control (DVC), a tool essential for data versioning in machine learning. Learners will explore the motivation behind data versioning, understand its differences from code versioning, and experiment with a simple classification problem. They will review basic Git commands, learn about DVC, and practice setting up a repository. The chapter concludes with an overview of DVC’s features and use cases, including versioning data and models, CI/CD for machine learning, experiment tracking, pipelines, and more.
Start Chapter
2

DVC Configuration and Data Management

This chapter delves into the setup of DVC, encompassing aspects such as installation, initialization of the repository, and the utilization of the .dvcignore file. It further navigates through the exploration of DVC cache and staging files, imparting knowledge on how to add and remove files, manage caches, and comprehend the underlying mechanisms using the MD5 hash. The chapter also elucidates on DVC remotes, distinguishing them from Git remotes, and guides you on how to add, list, and modify them. Lastly, it teaches you how to interact with these remotes by pushing and pulling data, checking out specific versions, and fetching data to the cache.
Start Chapter
3

Pipelines in DVC

This chapter focuses on automating ML pipelines using DVC. Learners create a configuration file containing settings and hyperparameters. They also learn about pipeline visualization using directed acyclic graphs and use commands to describe dependencies, commands, and outputs. Execution of DVC pipelines is covered, including local model training and how Git tracks DVC metadata. Additionally, learners explore metrics and plots tracking in DVC, including how to print metrics, create plot files, and compare metrics and plots across different pipeline stages.
Start Chapter
Introduction to Data Versioning with DVC
Course
Complete

Earn Statement of Accomplishment

Add this credential to your LinkedIn profile, resume, or CV
Share it on social media and in your performance review
Enroll Now

Don’t just take our word for it

*4.7
from 342 reviews
79%
20%
1%
0%
0%
  • Max
    2 hours ago

  • Samantha
    14 hours ago

  • Mariana
    17 hours ago

  • Emilio
    2 days ago

  • Paul
    6 days ago

  • John
    last week

    nice course

Max

Samantha

Mariana

FAQs

How does DVC differ from Git for version control?

Git tracks code changes, while DVC handles large data files and ML models that are too big for Git. DVC uses MD5 hashes and a separate cache to manage data versions alongside your Git repository.

Does this course cover ML pipeline automation?

Yes. Chapter 3 focuses on automating ML pipelines with DVC, including creating configuration files, visualizing pipelines as directed acyclic graphs, and executing them locally.

What tools and libraries should I know before starting?

You need familiarity with Python, pandas, Git basics, introductory statistics, and scikit-learn. The course builds on those foundations to teach DVC-specific workflows.

Does this course teach how to set up DVC remotes for team collaboration?

Yes. Chapter 2 covers adding, listing, and modifying DVC remotes, as well as pushing and pulling data, checking out specific versions, and fetching data to the cache.

Can I track model metrics and compare experiments with DVC?

Yes. The pipeline chapter teaches you to print metrics, create plot files, and compare metrics and plots across different pipeline stages to evaluate model performance.

Join over 19 million learners and start Introduction to Data Versioning with DVC today!

Create Your Free Account

or

By continuing, you accept our Terms of Use, our Privacy Policy and that your data is stored in the USA.

Grow your data skills with DataCamp for Mobile

Make progress on the go with our mobile courses and daily 5-minute coding challenges.