I am setting up a little experiment. The primary operating system on my
laptop is Fedora 8, but I spend a fair amount of time developing in
a Windows environment. Currently, I run all of my Windows systems inside
of VMware virtual machines. I want to create a common location for
all of my code and other files that I can access from both my Linux and
Windows systems. I tried creating a shared folder on the Linux system,
but Visual Studio refuses to build and run programs that are stored in a
shared folder. (At least, it refuses to work without mucking around with
the security policy)
My new plan is to use a
SCM to manage my
files, and to keep all of my systems synchronized. The main repository
will run under Linux, and the Windows systems will synchronize their
files with the Linux host. To this end, I need to choose a SCM system.
Out of all the options out there, the two that I know the best are
Subversion and Git. Lately I have been doing more work with Git
and I would prefer to work with its distributed model instead of the
centralized model of Subversion. The problem is that Git is not well
supported on Windows. Plus Subversion has really nice Windows
integration through the TortoiseSVN shell extension.
So it all boils down to a choice between the superior (in my opinion)
model of Git, or the polished Windows experience of Subversion.