views:

168

answers:

4

Let's say I have a development PC at my work, another development PC at my home, and a tiny netbook PC that I often carry with me. Since these PCs have the same operating systems, the problem of portability doesn't exist. But...with a similar setup, how do you manage to keep the installed applications the same or nearly the same on these 3 (or more) PCs? Since I work on similar things when I'm at home or on the road, I want to have the same tools (including the same versions), a source control server, things like that that make the life easier when I want to show something coded at home at my work and using it after that, or vice versa.

Thanks in advance

A: 

For data (source code, htmls, images.. stuff you work on) I would set up a source control server like git, svn or whatever you prefer and sync with that.

For applications, I knew some people who used virtual machines for that purpose. There is some performance hit but apparently it works well enough. So you setup a virtual machine, install all your stuff in there, close it and then copy the vm file to all the machines where you want to run the enviroment.

Gregory Mostizky
A: 

This depends on your development language / environment of choice. I have a setup where I use a portable harddrive (could use a usb pen drive but I wanted the extra space) which has portable versions of everything I need for a fully fledged PHP and Ruby development environment. The basis of this is the PortableApps suite (http://portableapps.com/) and includes:

I can now plug this drive into any windows machine and run all of my apps directly, et voila - I can not only use this to handle working on multiple PCs in multiple locations but can use it in any other situation I may not have a PC with me. Needless to say this is backed up.

I am currently trying to do the same for .net development and am planning to try the SharpDevelop IDE however am not sure that a portable Sql Express instance is possible - would love to be able to add that as well.

Macros
+1  A: 

The easiest way to do this is install VirtualBox on your machines and keep your (virtual) development machines on a usb drive. It works very well and makes backups as easy as a file copy.

It also makes keeping potentially conflicting development environments separate. I have one for VS2003, one for VS2008, and one for WID.

R Ubben
A: 

Run Synctoy 1.4 (version 2.0 is not nearly as good) on the Netbook, to synchronise files and folders from the PCs. You'll also need something like EmptyFolderNuker to get rid of the empty folders it creates. If installed on both PCs it can instead be used to sync them to the Netbook. I always first do a preview if there's any uncertainty about it doing the files and folders safely and after using it for a few years have had no problems.

Rob Kam