I am not sure this is relevant, but there is a history_tracer plug-in which takes snapshots of your Leo files after each change. That is something like making git commit after each edit. You need to have leo-ver-serv program running and your Leo documents must be on the list of files that leo-ver-serv should keep an eye on.
By the way, I would also like that we could interrupt Leo without killing it. On several occasions I missed that functionality. I've added support for interrupting the execute-script command in Leo, and it wouldn't be so hard to support many other commands. I don't have the time to do it myself right now, but I guess it would be sufficient to add try/except KeyboardInterrupt pair around some global method that executes commands. This might not cover all commands, but it certainly would cover a lot of them. Edward was recently refactoring key handling code and I believe there is a method something like a main command handler there.
Vitalije