I use subversion and tortoisesvn. For integration with VS, I use VisualSVN, which costs money, but it is quite cheap and works flawlessly. There are free subversion version control provider packages for Visual Studio, and I tried several, but VisualSVN worked much better, so I went with it.
Darren stokes
source share