Distributed revision control

A revision control software is a tool programmers use to keep track of who wrote what and when it was written in a programs source code. It can also be used to restore old versions if someone makes a mistake.