I've recently been working on a fairly large Visual Studio Web Project for a client. As I was sharing the coding with a colleague, and because we wanted to track changes to our code, we decided to use SVN, an Open Source source control system.
The client component of Subversion is a piece of software called TortoiseSVN. This works really well, and integrates nicely with Windows explorer. Because TortoiseSVN was not designed specifically for Visual Studio, there is no direct integration and instead you have to keep swapping back and forth to Windows Explorer to Commit, Update, etc. This was a little painful to say the least as it is difficult to remember what new files you need to add to source control.
A quick google search later and we discovered a piece of Software called Ankh SVN. This nifty little utility is a Visual Studio Addin, which automatically tracks changes to your projects and adds the appropriate files into source control. This was just what we where looking for as it allowed TortoiseSVN operations to be ran from inside the IDE. To some extent it was good at automatically adding new files to the repository, but it did have problems when renaming files. This required a commit if there were changes in the file, before it could be renamed. Not a big problem, but it caused unnecessary revisions.
All in all, this worked rather well until the new version of Visual Studio 2008 was recently released. AnkhSVN was not compatible out of the box, although we managed to find a Registry hack which at least allowed it to load into VS 2008. There was a problem though, it had to be ran in Admin mode, DEP has to be disabled for it to work, and an error was thrown when launching a project if IE debugging was turned on.
I therefore decided to look for another solution and found VisualSVN. This is a commercial product but is reasonably priced at $49 and you can even get a free copy if you are working on an Open Source project
There are options in the plugin to push a solution into a new repository, and to pull a solution from an existing repository, as well as all the normal stuff you would expect. It's easy to see the status of a file as they are overlayed in solution explorer with either a green (unmodified), amber (modified), or red (clashed) icon. They seem to have implemented file renames better as you can now do this without an interim commit.
Because this also works alongside TortoiseSVN, you can easily access the nice tools to resolve file conflicts right from inside the IDE. Great Stuff.
They have even packaged up a free product which installs all of the components required to host your own SVN server. This requires almost zero configuration other than to choose a username and password.
I was impressed with AnkhSVN, but VisualSVN is on another level in terms of usability and in my opinion is a bargain at $49. Well worth a look out.