The title is a reference to “Spaceballs”, of course.
Recently, I’ve been doing all of my development on a machine that doesn’t exist. This both amuses me greatly and increases my productivity.
In case you haven’t figured it out yet, I’m using a Hyper-V guest OS as a development machine with the host running Windows Server 2008 x64. The machine has two harddrives, one of which has two partitions (OS and programs on one, vhd files and other persistent data on the other), and the other of which is actually offline from the perspective of the host OS.
Instead, my development guest machine has complete control of this second drive and uses it as my version control enlistment store. That means that every time I roll back to my earlier snapshot of that machine to install the latest pre-release development tools and reattach the drive its contents match what TFS says it should have and I don’t need to run a complete force get.
The host has 2 processors so I’ve set my development guest to have two as well (otherwise building would be slower). I haven’t noticed any performance degradation in terms of TFS operations, build time, etc. on the dev box and have seen significant improvements in the time it takes me to get up to the latest dogfood bits (yum yum). In addition, while the dev box is getting prepared I can still be checking e-mail, the Visual Studio Team System forums, or other similar work on my host OS.
I’ve been running this configuration since a little before the Hyper-V RC was released and am very content. I’ve also spent a good deal of time testing TFS configurations on Hyper-V and am very pleased with the snapshotting functionality in particular. If you haven’t installed the RTM version, do it now!