Version Control is a system capable of recording changes made to a file or set of files over time.

Git is a decentralized versioning system and is also an object database.
Linus wanted to ensure that all data downloaded with Git is trustworthy, so he did this using hashing.
Git's data structure is simple compared to other systems, especially other VCs.

Git thinks of data storage as a stream of snapshots, generating "pictures" of the state's current version of files from a repository generating a SHA-1.

CVCS (Centralized Version Control Systems) - Subversion e Perforce
LVCS (Local Version Control Systems) - MΓ‘quinas locais
DVCS (Distributed Version Control Systems) - Git, Mercury, Bazaar e Darcs