06 March 2012

Best Way To Implement Basic Version Control While Keeping Important Files In Sync Between Computers

If you're like me and you are using many computers, and even different operating systems, then you will want to know how to keep your important files in sync and safely backed up to the cloud with version control. You can do this all completely free! My basic method is to use Dropbox and Sugarsync to do this, but I will also show you how to use a free cross platform program called Synkron to sync your important files to a USB key for times when you don't have an internet connection.

The first thing to do is to sign up for a Dropbox account, which is free. The basic account gives you 2 gbs, and you get extra space if you use a referral link. Use your academic email account to maximize referral credits if you have one. The best way to use Dropbox is to put your project files in it and install the client on all your computers, or use the web interface to work on your files by downloading them to the client machine. The changes will be propagated across all your machines. It's also great for collaborating. The amazing thing about Dropbox is that it provides basic version control on your files. That is, deleted files or even previous versions of your files are automatically backed up to the cloud for 30 days! You don't have to learn any crazy version control system. It's automatic. Now I know a lot of people like to bend Dropbox into something it's not, by using symlinks to add virtual folders. Be forewarned. This can lead to problems if you have a lot of files that are changing often. Your Dropbox client may become unstable and use a huge amount of CPU. Dropbox is great, but stick with the one folder.

The one folder of Dropbox is not a problem because if you want to have an application that syncs particular folders and propagates them to all your computers and to the cloud, Sugarsync is a better solution. A basic account, which is free, gives you a generous 5 gbs to start with, and referrals are of course rewarded. Sugarsync is an amazing way to get basic version control on all of your important files and folders. I highly recommend it. Notice that Sugarsync allows you to keep specific folders in sync across computers and platforms. Sugarsync also has a Dropbox like feature called "Magic Briefcase" which consists of a folder that you can simply drag files to or store projects in that will be automatically kept in sync across all your devices. Both Dropbox and Sugarsync also have iOS and Android clients, as well as other platforms. So you can view your files from your mobile device, although you obviously need an internet connection to do so.

My final suggestion is an amazing free application that I have been using for a while called Synkron. It's cross platform and as good as any commercial application I've used. The way I use it is I have a particular project folder in Dropbox that I sometimes need to carry on a USB key. So, I use Synkron to keep this folder and the Dropbox folder in sync. When I return to one of my computers I run Synkron and update the Dropbox folder with the changes, which then propagate to all my machines automatically. Pretty sweet.

So there you have an amazing three pronged approach to backing up, syncing and keeping your most important files in order across machines and platforms, even if you sometimes lack an internet connection to do so. The coolest part is that you also get basic version control for free automatically. No need to struggle with Git or Subversion. What solutions are you using to keep your files in sync across machines?

No comments: