CyberNotes
Tutorial Thursday


arrow Windows Windows only arrow

Have you ever been working on a project where you wish you had a copy from a few hours or days ago before you made some changes? Most people never think about being able to setup a system that manages revisions of files (a.k.a. version control) because they think it’s too complicated, but it takes only minutes to do using the free Cobian Backup software.

I’ve been a huge fan of Cobian Backup ever since I wrote about it back in April. It has a number of features that truly makes it one of the most complete backup solutions I’ve found, and today we’re going to demonstrate how it can also serve as a revision management system for you’re most precious files. What it will do is make a copy of a file every time it recognizes that a change has been made. As you can imagine this type of system can be priceless for programmers, writers, designers, and more.

How do you set it up? Here is the step-by-step guide on what you need to do:

  1. Download and install the free Cobian Backup 9. You should see a screen like this when you run it the first time:
    cobian backup.png
  2. Click Task -> New Task. Give the new task a useful name, and choose Differential as the backup type:
    cobian differential-1.png
  3. Click on the Files section along the left side, and in the upper-half of the window choose the files and/or directories you want revisions kept for. After you’ve done that move down to the bottom where you’ll choose the location you want the revisions to be placed.
    cobian files.png
  4. Now switch over to the Schedule section. Change the type to Timer, and then at the bottom of the window enter in how many minutes you would like between each backup. If you’re working on something where having lots of revisions is very important you can have it check every minute, otherwise every 15 to 30 minutes should be suitable. Alternatively you can set a specific time/day for the backups to occur, but generally a timer works better for keeping track of revisions.
    cobian schedule.png
  5. That’s it! Press the OK button to have it start creating your revisions. Any file(s) that get changed will be copied over into a new folder that is labeled with the date/time that the backup was performed:
    cobian backup folders.png

Now that you have everything setup you can rest easy that you’ll have revisions available for your most important files and folders. I know what you’re probably thinking now. What do you do when you want to see all of the revisions for a particular file? Do you have to navigate through each folder individually? Nope, you just need to perform a search in your backup folder for the particular file. This can easily be done by right-clicking on the backup folder, and choosing the Search option.

document search.png

One thing that you want to keep in mind when doing all of this is that duplicates are made of a file every time a change has been made to them. So if you’re working with large files (movies, music, etc…) these backups can really start to eat away at your disk space.

–Other Configuration Options to Consider–

If you’ve followed the steps above your backups should be working just fine, but there are a few things that you may discover that you want to configure:

  • Changing the Timestamp Format
    Each time a new folder is created to hold your revisions the name is assigned to the current date and time. The format of the time can be changed by going to Tools -> Options -> Advanced and altering the value in the Date/Time Format field.
  • Disable the Popup Alert
    Whenever a backup starts a little popup is shown down by the System Tray telling you what’s going on. If your backups are frequently getting executed this can get quite annoying, but they can luckily be disabled. Just go to Tools -> Options -> Functionality, and uncheck the Show backup hints option.
  • Archive Each Backup
    If you’re frequently doing backups they can quickly start to take up a lot of room. One thing you can do to help conserve space is archive/compress the files each time they are backed up. When you’re configuring your backup you should see a section along the left side labeled Archive, and clicking on that will let you choose your compression method. I recommend using 7Zip since it will save the most room, but the standard ZIP format might be the easiest for you to work with since Windows includes built-in support for it.

–Overview–

As a programmer and writer I’ve found revision systems like these to be incredibly useful, and that’s largely because everything doesn’t always work out the way you want it to. Being able to revert back to a file’s previous state can save a lot of frustration. If you’re working on a report, project, or anything else that’s extremely important I’d recommend setting up a revision system like this so that you don’t regret it later on.

  1. Why not use something like CVS or Subversion? There are loads of free subversion hosts, and becuase they’re hosted off-site you’ve got increased security. If you back them up locally and your hard drive goes then you’ve lost them all. But with subversion you just check them out again. Or if you want to keep a copy of the repository on your PC as well, try using Git.

  2. That’s definitely one solution, but I wanted to show how you could use a simple backup tool to do the same sort of thing. When it comes to the free subversion hosts I’ve heard some bad experiences from people using them, ranging from losing the files that they had stored on all the way to shutting down the service without getting forewarned. So doing that can be risky, and since they’re free the owners have little obligation to compensate you for your loss.

    Using Cobian you don’t have to do the backups locally… if you’ve got another computer on your network it would be just as easy to setup as doing it locally. If you just want a revision history for something like a report you’re working on I don’t think there’s any sense in setting up a CVS or Subversion server.

  3. I use FileHamster ([mogware.com]) to handle revisions in my web programming.

    The only problem for this program is the main window some times freeze (although the backup process still running). Maybe because I use Vista with UAC on. End task and launch the program again usually solve the issue.

    Have you try it? Is it better than Cobian?

  4. blaszta wrote:
    Have you try it? Is it better than Cobian?

    I haven’t tried FileHamster myself, but from what I can tell Cobian is more full featured as far as a backup utility goes. You can do things like backup to/from an FTP, which few apps can do.

  5. Using FileHamster myself too, though I don’t like that it doesn’t happen in the background completely. If the backup process takes too long, I believe it takes focus or shows a small progress window.. Can be quite annoying. Still looking for better solutions, this might be one of them.

    You can use a paid service for SVN for reliability (such as beanstalkapp.com, fogbugz.com), but since you have to commit manually, I don’t think that is an equal or better solution for easily keeping revisions of documents.

  6. Cobian is an awesome app… however, it freezes once in a while. Tonight I was uploading a 200MB file which took a few hours (slow server)…and it froze at 96% :(

  7. Andy wrote:
    Cobian is an awesome app… however, it freezes once in a while. Tonight I was uploading a 200MB file which took a few hours (slow server)…and it froze at 96% :(

    Sounds like a bug… you should definitely report that to the developer.

  8. I think he knows about it already:
    [educ.umu.se]~cobian/cobianbackup_faq.htm#37

    It’s probably the inability of the software to “resume” the connection at a timeout… or the resume function is somewhat buggy.

  9. Hmm.. noticed one downside with this: it doesn’t auto-purge or limit. Any way to set that up? (e.g. as in JungleDisk: max file-size for versioning to kick in, remove after x days, keep at least/at most regardless of age)

    Also, doesn’t it lock the files when backing them up? 7-zip would keep them locked longer than zip, so zip would be preferred if you do many saves I think?

  10. Change wrote:
    Hmm.. noticed one downside with this: it doesn’t auto-purge or limit. Any way to set that up? (e.g. as in JungleDisk: max file-size for versioning to kick in, remove after x days, keep at least/at most regardless of age)

    No, I don’t believe there is any way to have it remove files after a specified period of days. You might be able to contact the developer and request that for a feature though.