We all agree that doing backups is really important to prevent dramatic data losses. I have always been pretty lazy about that topic and usually rarely backup anything, or not very often. I think the problem was that I didn’t find easy ways to do it. For my current project, I do backups nearly everyday and thats not taking much time, if any. Here is what I do:
Source code : Perforce
It’s not really “backup” but I think it’s important to use proper source control to save your code. Having the history of the code is a wonderful feature. I especially like what is called Time-lapse view in Perforce because you can see instantly when was added a specific (buggy) line of code.
Most people go with Subversion (SVN) but I chose Perforce and I really like it. It is free only for two or less users so it may not suits you if you have a big team. It is very easy to set up, I usually run both the server and the client on the same computer. I use my iBook to connect to the server when doing Mac ports.
Perforce can also be used for resources but I don’t do it because having different revisions for resources takes up a lot of disk space.
Resources : SyncBack
Even if I am not using real source control for resources, I backup my resources using SyncBack Freeware. In my current setup, it creates a zip file of my root project directory. To save space, I use filters. For example, I do not backup intermediate files made by the compiler or EXE files because they can be built from the source. Same for graphics file, I keep the original resource but don’t save the final png files. About every two or three weeks, I rename my backup with the date of the day and I keep two or three versions of resources.
SyncBack is very easy to use and there are also more complete SE and Pro version (shareware).
Online backup : DropBox
In addition to a local save on another drive in case of a disk crash, it is also important to keep your backups off-site, just in case. First, I used a feature in SyncBack that sent the backup to a FTP. But I now use DropBox, an online service that automatically synchronize a folder on your hard drive with an online storage. All you have to do is to set up SyncBack so that the final zip ends up in the folder you synchronize with dropbox. A few minutes later, it is up-to-date online, on a safe and distant server.
DropBox allows you to have multiple users and private folders but I didn’t try yet. However, I plan on using Dropbox for my future works with art and audio contractors if possible. The free service of DropBox is limited to 2 Gb. There is a paying service and a referral program to get more space. If you plan to subscribe, please use this link so that I can get a 250 Mb bonus!
Doing backups is useful only if you do it automatically or at least very regularly. The tools presented here really allows you to do that. Do you use these softwares too? Do you use even better tools?