3
I keep a local copy of customized files.
I usually edit them locally, and then upload them to the server.
Sometimes I'll make changes on the server. In that case, I'll download the changes to my computer, so that they'll be in synch.
In addition, I do periodic backups of the server, download the backups to my computer, and then copy them to a CD.
My web hosting service does backups too, but I don't want to depend on that. In fact, they told me that their backups are done on another device within the same box. That wouldn't protect against certain types of problems, such as fire, water damage, theft, etc.