git-annex. Interesting plugin for git with which you only manage the metadata of large files, but not their actual contents in git. The files themselves are managed as normal external files, but the directory structures and references are correctly versioned - and all this together with normally versioned files. This bypasses the problem that git has with large files. And thus something like a photo archive based on git becomes possible.