tags:

views:

333

answers:

2

We are currently looking for a version control system to use in our projects.

Up to now we have been using VSS, but nowadays more powerful source control systems exists like TFS, SVN, etc.

We are planning to migrate our projects to Visual Studio 2010, so the first idea coming to mind is to start using TFS 2010.

I have never worked with SVN and other version control systems.

My question is: how good is TFS compared to other source control systems? Is it a good idea using it, or should we rather use SVN (or any other system)?

Thank you.

Edit

Currently our team is less than 10 people.

We have been using VSS for the last 5 years.

+2  A: 

Hi!

Martin Fowler has an interesting post about this topic on his website. Take a look at http://martinfowler.com/bliki/VersionControlTools.html.

Best Regards,
Oliver Hanappi

Oliver Hanappi
While I ordinarily respect Martin Fowler, that article gives the reader a whole lot of nothing. He starts off stating that there are several *very prominent* tools (like TFS, ClearCase, etc.) that he doesn't recommend, but plainly states that he's not going to address--*at all*--the reasons why.
Adam Robinson
+5  A: 

Team Foundation Server is a full Application Lifecycle Management suite. If you have a Professional, Premium, or Ultimate version of Visual Studio 2010 with an MSDN subscription, Team Foundation Server 2010 is now free. All of your Visual Studio users that fall under that classification, as well, and do not require an additional CAL. Other users, however, will require that you purchase CALs to stay compliant with the license.

Using Team Foundation Server 2010, you will get source control, process management, defect tracking, build services, reporting, project portals, and more. SVN is strictly source control. I have used both, and they are different beasts. It would be fair to say that the type of features offered by SVN are a subset of Team Foundation Server, on the whole. While there are third party connectors to make it easier to work with SVN inside of Visual Studio (free, I believe - as well), the native integration between Visual Studio and Team Foundation Server is fairly seamless. From an administrative standpoint, both on the server and project level, you have an excellent balance of ease of use and features.

For the last three years, or so - between two different employers - I have setup and installed Team Foundation Server and maintained it over its lifetime. Both companies have used it to their advantage to be able to bring ordered process to their SDLC. The MSF Agile v5 template, if you are an Agile/Scrum shop, is outstanding. Sprint planning and management has never been as easy with any tool as it is now.

Edit - Added information about small teams:

I noticed a comment to the question regarding small teams. Team Foundation Server 2010, given its price point, makes sense for small teams now, as well. I would not have recommended it with Team Foundation Server 2008, though. With the latest version, there is a very nice "Basic" configuration that provides a lightweight installation, sans reporting and portal functionality. You can also install it locally, as well, if you are a "one man shop" with this configuration (Microsoft actually lists it as an acceptable configuration for a client install.) I have it on my laptop for my POC work - having set up a nightly maintenance plan and moving my backup to Dropbox. Works very well for peace of mind. ;-)

joseph.ferris