VSS or SVN for a .Net Project?,
among many other similar questions.
There are a lot of options out there for ASP.Net Developers, some are total garbage and some are feature rich and pricey.
I’ve been using Visual Source Safe 2005 for a while when doing personal development, but only on my personal projects. It has issues, let me say.
The worst issue is that it doesn’t seem to be able to handle ASP.Net Web Sites. Most things are never checked out on edit regardless of how you set it up and I usually have to Get Latest and say “Keep local changes and Check Out” to get that functionality.
Anyway, I wanted to see if anyone could help me move away from this monster to something more stable. Team Foundation Server is obviously overkill. SourceVault is reliable, but kinda pricey. SVN is free, but all of the plugins that most other source control providers give you make it cost “something” when it’s all said and done.
I was just wondering what everyone is using and if they can suggest a better way to go.
Thank you for visiting the Q&A section on Magenaut. Please note that all the answers may not help you solve the issue immediately. So please treat them as advisements. If you found the post helpful (or not), leave a comment & I’ll get back to you as soon as possible.
I recently moved my team off SourceSafe to Subversion using three free tools:
- VisualSVN Server – Subversion server package for Windows
- TortoiseSVN – Explorer shell extension
- AnkhSVN – Visual Studio plugin
You’ll also want to reference the Subversion book.
This was easy to set up and has been a tremendous success. SourceSafe is a disaster — the final straw for me was when I had to merge a feature branch and discovered that the functionality really doesn’t exist in any usable form.
I prefer to use TortoiseSVN for complex operations such as adding solutions to svn, branching, and merging. I use AnhkSVN for updates, commits, and reverts.
Be aware that the latest versions of these tools are currently built against different versions of Subversion. VisualSVN and AnkhSVN are built against 1.5.5 but TortoiseSVN is built against 1.6. You can either grab the previous version of TortoiseSVN or use a daily build of AnkhSVN.
I suggest to take a closer look at SVN. We made the move from SourceSafe to SVN about 18 months ago, and I would never want to go back (we’re mostly doing ASP.NET stuff).
Especially, when working in a team, the edit-merge-commit model makes it so much easier than SourceSafe’s Lock-Edit-Unlock model. Also handling branches is much easier with subversion.
Regarding the plug-ins, I can say the following: I’m mainly using TortoiseSVN (free) which is nicely integrated into the windows explorer. I do not really miss a plug-in that is integrated into Visual Studio.
Out of curiosity, I installed AnkSVN (free), which gives you an integrated solution (in VS). I have to say, it works very well, but most of the time, I still use TortoiseSVN.
You write .NET guy… if you are just a single user, SourceGear Vault is free. After that it runs about $250 / user with support. Either way, I have been using Vault for years. Simple, works well and coming from Source Safe, the interface will be similar.
At home, I use the free, single user edition. At work, we have licensed about 60 users.
VisualSVN is great but not free (though it’s community license allows free use on non-domain computers). AnkhSVN is free. Bazaar doesn’t have much integration with VS yet but it’s great from command line.
For large scale projects, TFS is one way to go if you are looking for a centralized source control system.
I personally recommend switching to Git.
I use the free Visual SVN Server for the server side of things, and the TortoiseSVN client for Explorer integration.
I don’t bother with Visual Studio integration, since I use TVSN for non-VS projects too. I’ve also installed the command-line SVN tools for automated builds using the MSBuild Community Tasks.
I’ve also setup TortoiseSVN to show the “modified” icon if there’s anything in the tree that isn’t checked in, and I ignore specific folders (such as
obj). My checkout tree matches my repository layout.
If your work is so unimportant that you refuse to spend money on it, why do it at all? Bite the bullet, spend $50 and buy VisualSVN.
I went with Team System and have been very happy. Yes, it’s probably got more stuff in it than I will ever use, but my thinking was — do I want to spend my time on configuring and maintaining a lot of free (or inexpensive) software and roll my own development environment or spend my (company’s) money on an integrated environment that our server guys could maintain for me. I decided that my time was worth a whole lot more to the organization writing code and was enough of a justification to make the investment in TFS.
Believe me, it wasn’t much of a sell to my manager who fully agreed with me. Since the server guys already maintain SharePoint and SQL Server for other reasons, it’s not even much more effort for them — just another server to worry about out of the dozens they’re already supporting. Since we’re running it on a VM, the hardware costs are negligible.
If I were working for myself, obviously, my calculation may have been different. I would say, though, that you need to consider the expense not only of the software but also in terms of the amount of time (and skill) you’re willing to devote to maintaining your environment. You need to consider the opportunity cost associated with pulling bits and pieces of your dev environment together and maintaining it when you could be writing paying code.
SourceGear Fortress (Client and Server)
- Great integration with Visual Studio
- Solid application
- Has an issue tracking systemm on board
Team Foundation Server is not necessarily overkill. If your team has 5 or fewer developers AND you already have an MSDN subscription you can use the workgroup edition for free. Upgrading to the full edition when the team gets bigger isn’t too bad either.
You don’t have to use all of the project management features if you don’t want to. Using the source control alone is fine and a big improvement over Visual Sourcesafe.
I would swap out the default compare and merge tools with something like Compare It! though.