I'm primarily a C/C++ guy who does telecommute projects on Linux, Mac OS X, and Windows.
All my development machines at home are on a gigabit Ethernet LAN which also includes a Linux server that doubles for source control (Perforce and git) and issue tracking/wiki (Redmine).
Why have a separate server?
- The more copies of the source there are, the less likely it is I'll be in pain if there's a hardware failure.
- My Internet firewall forwards key ports to the server, so I can travel and get to all my important stuff without compromising my LAN. I've pulled a complete set of sources onto a laptop from a Starbucks.
- I can keep all my development machines' sources synchronized.
It really doesn't take much horsepower to set up a Linux server to do this. I'm using a first-gen Intel iMac with a dinky hard drive and anemic CPU. It would be inadequate for most things and would probably gather dust in our crawl space, but it runs great with Ubuntu Maverick for this purpose.