The auto-versioning got me thinking of how to do this with git. You could have a cron job come by while you're working and if anything has changed, add and commit it to $CURR_BRANCH/auto. Then, when you're ready to do a real commit, you `git merge --squash`
I know that real git users commit about as often as they save, but would this make sense as a workflow for those of us who are still used to committing only when it works? Or would all of the autocommits make things overcomplicated?