PhoenixFS - a versioning filesystem inspired by Git
github.com
github.com
Does it mean you can just 'mount' a git repository, instead of working with commands? Or is git just used as an incremental backup system?
Motivation and target audience: End users who don't want to bother with versioning their files, but still want transparent backups of everything they edit. Flashbake is a project that takes a stab at solving this issue, but every solution that doesn't work at the filesystem level will have to rely on "polling for changes", which is rather inelegant.
How PhoenixFS works: No, it doesn't use Git at all. This is because it aims to be much faster than Git at the cost of advanced functionality. It has an in-memory B+ tree that's updated everytime the directory tree changes. It's a true content tracker like Git: the tree only references SHA1 hashes. There are three pieces of information in the `.git` directory from which the entire filesystem can be rebuilt: the B+ tree persisted in a file, a packfile containing deltified historical content, and a packfile index for looking up a certain SHA1 in the packfile.