I could use a key-value store like couchdb or cassandra to store diffs between times when something is saved to show histories and do merges with one of the strategies git uses; and maybe in the future let users use a desktop app and thus clone/push/pull changes like a regular git hosting site. Again, in a skimmed non-dev approach to git.
For the record, this talk has practically convinced me of using git http://www.techscreencast.com/language/ruby/using-git-in-ruby-applications---scott-chacon-/1431 because I realize that it might seem overkill at first but I don't want to end up reinventing git. But a little n00b voice in my head still screams overkill.
So, hackerworld, what's your take on this? I mean, I could just do something with the [ruby](http://github.com/mojombo/grit)/(python)[http://gitorious.org/git-python] interfaces to git and something like gitosis, or create my own subset of file history management like said above; what would be the wisest choice?