Git

From HaskellWiki

This page aims to introduce the concepts behind Git in a "Haskell way".

The immutable object store

All the different objects in Git - individual files, entire directory trees, commits and other things - are stored in a repository-wide central store. Each object is identified by computing a SHA-1 hash, which is a function of only the object's contents.