This page is part of my personal knowledge database, that helps me to store and navigate my learnings.
Read on here for details

Version Control System

A Version Control System (VCS) allows to organize changes to file structures in unique revisions (aka commits). Each revision stores the change to the file and additional meta information like the author, the date and optional documentation (comments).

Working with Version Control makes it possible to reference specific revisions. With revision being a consistent snapshots of the code base at a specific time, it becomes possible to reason about introduction of failures or start of effects. Without that such discussions are often not even possible.

VCS is feature that underlies any modern Deploy Pipeline and integrates with Automated Release.

The nature of especially distributed VCS supplements collaborative software development in various workflows.

The most widely used VCS is Git - originally written by Linus Torvalds - which underlies the offerings of GitHub. Also widely used are Mercurial, Bazaar and formerly Subversion.