This document provides an introduction to version control. It discusses what version control is, the history and evolution of version control systems, different types of version control systems classified by their repository model and concurrency model, and practical considerations for starting to use version control. Key topics covered include centralized and distributed version control, lock-modify-unlock and merge models, and domain vocabulary for common version control tasks and workflows.