Also, in any native OSX app each "save" works like a git commit, you can browse all "versions." [2]
Combined, these native OSX features do exactly what you want.
[1] http://support.apple.com/en-us/HT201250
[2] http://support.apple.com/en-us/HT202255
http://backintime.le-web.org/
http://backintime.le-web.org/