Well, in a certain way I agree with you. But I am now rather used to Export to Zip before applying any major changes.
However, there are other ways:
1) For a long time I kept my project-files in the Dropbox-folder and worked directly in this folder on my computer. Dropbox offers a possibility to grab previous files which indeed has saved me a few times. However, I believe Erel mentioned somewhere that working this way with Dropbox may not be the best solution although I never had problems with Dropbox.
2) Now I am doing everything using GIT. There is a site called Bitbucket which lets you for free keep private project whereas GitHub only allows public projects unless you pay a small monthly fee. Then you can use a free client such as Source Tree or GitHub for Windows to manage and handle your projects. This is great as a backup, to enforce you to write down changes you've made to your apps (how many times haven't your users asked you for the change-log?) but most importantly to revert any commits you may have done. It takes some to set up but once configured properly, it is great. You can use tools such as "diffs" which let you see the changes in your code etc. In addition, it is great when working in a team. It is also great when I work with my private apps during my lunch-break at work. When I get home, I just pull the changes down and my project at home is up-to-date. Of course, this works viceversa as well.
Just some thoughts...