none
Team Foundation Server vs SubVersion

    Question

  • Hi,

    Did any one has done comprehensive report comparing Team Foundation Server vs SubVersion vs VSS  ?

    The comparison will be toward business decision.
      - Cost analysis. How much saving if using TFS compare to others?
      - Efficiency & Productivity?
      - Quality Assurance.
      - etc

    Thanks,
    John

    Monday, September 18, 2006 8:03 PM

Answers

  • Hi John,

    I'm not aware of a published study comparing the three like you ask.  The key difference between TFS and the rest is the highly integrated nature of Source Control with Worth Item tracking and the fact that you have a data warehouse on top of both. 

    In terms of raw source control features, TFS and Subversion compare well.  Obvioulsy, TFS has the benefit of talking to SQL Server 2005, meaning that any SQL tools and knowledge can be used to backup the database etc,  off the top of my head - Subversion lacks the shelving, the caching proxy and and lightwieght labelling features but does have a better offline story than TFS V1. 

    TFS, Subversion and things like Vault are great, modern, Source Control systems.  You'll notice I left VSS out of that list :-).  While the Source Control features of TFS are very good - it does much, much more stuff than version control...

    M.
    Monday, September 18, 2006 8:46 PM
  • SubVersion does not track merge history.  That's a deal-killer in my mind for large projects.

    The other thing to note is that SubVersion inherited its branch/tag/label semantics from CVS/RCS.  If you're used to that system then you will probably find it easier to use than TFS at first.  If you're used to something more like Vault or Perforce then the opposite is true.
    Tuesday, September 19, 2006 2:12 AM

All replies

  • Hi John,

    I'm not aware of a published study comparing the three like you ask.  The key difference between TFS and the rest is the highly integrated nature of Source Control with Worth Item tracking and the fact that you have a data warehouse on top of both. 

    In terms of raw source control features, TFS and Subversion compare well.  Obvioulsy, TFS has the benefit of talking to SQL Server 2005, meaning that any SQL tools and knowledge can be used to backup the database etc,  off the top of my head - Subversion lacks the shelving, the caching proxy and and lightwieght labelling features but does have a better offline story than TFS V1. 

    TFS, Subversion and things like Vault are great, modern, Source Control systems.  You'll notice I left VSS out of that list :-).  While the Source Control features of TFS are very good - it does much, much more stuff than version control...

    M.
    Monday, September 18, 2006 8:46 PM
  • SubVersion does not track merge history.  That's a deal-killer in my mind for large projects.

    The other thing to note is that SubVersion inherited its branch/tag/label semantics from CVS/RCS.  If you're used to that system then you will probably find it easier to use than TFS at first.  If you're used to something more like Vault or Perforce then the opposite is true.
    Tuesday, September 19, 2006 2:12 AM
  • Thank's for all the feedback, look's like Team Foundation Server still new. Not too many business decision being make yet. Correct me if I am wrong.

    I am trying to find out how to convince top level management to use Team Foundation Server.

    However, thanks anyway for all the feedback.

     

    Tuesday, September 19, 2006 5:47 PM
  • While it is true to say that Team Foundation Server is new, plenty of businesses are already chosing to adopt it.  Freely accessible published data like you ask for is hard to obtain - however there are numerous case studies on the Microsoft web site (http://msdn.microsoft.com/teamsystem).

    You can also take a look at some other studies have been carried out.  But then again, just because other people have decided to adopt the product doesn't mean that you have to.  There is plenty of competition in the developer tools market for you to get the tools you need at a price that you can afford.

    In terms of convincing your management, then an explaination of the integration between work item tracking and source control along with a cost comparison of buying the equivalent (not integrated) products for your organisation should do the trick.

    Anyway, good luck.

    All the best,

    Martin.

    Wednesday, September 20, 2006 2:16 PM
  • I should also mention that we have a great technical sales staff. Comparative analysis is their job, and they do it well (way better than an engineer like me, no doubt). If you call up and tell them your needs, other products you're considering, scope/budget, etc. they can help you choose the best option.
    Wednesday, September 20, 2006 10:40 PM
  • > SubVersion does not track merge history.  That's a deal-killer in my mind for large projects.
    Merge tracking is not yet included - but I do not see any problems about this. You should know what you are working on. We use SVN in big projects too - no problems. Other topics in SVN vs. TFS can be found here:
    http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=794522&SiteID=1. You cannot compare TFS with SVN because SVN is only the SCM-Tool not an all-in-wonder Tool out of the box. But you can use SVN with other tools - e.g. Edgewall Trac, CollabNet, etc. to get an integrated environment. TFS  should be compared with Clearcase  - not with SVN!  A big problem in some companies is that TFS supports only one platform and IDE - I think SVN, Clearcase, etc. will be a better solution in a "cross-platform" company. What if you have some Eclipse, Netbeans Java and some embedded Linux developers?
    Friday, January 19, 2007 7:17 AM
  • I totally agree with you about comparing like with like.  Clearcase is a much better comparison, and one in which TFS does very well (especially when you look at cost of purchase and cost to keep running).  Clearcase would win on a straight feature count at the moment - but when you look at useability and the stuff that people actually use - TFS wins for most users.

    However, I have to disagree with you on one point.  TFS Does support cross platform development.  In fact I work for the company that work with Microsoft to provide that capability - see Teamprise (http://www.teamprise.com) for the Eclipse plugin for TFS for example.  There is also a standalone graphical client and a command line client.  The Teamprise client is 100% native Java code and supports things like the Syncronize perspective in Eclipse.  As far as I am aware, the ClearCase integration to Eclipse uses JNI and requires you to have the native Clearcase client also installed on that machine making deployment a little harder.  We don't have a NetBeans integration yet, but we would certainly look at doing this is there was any demand.  However, embedded *nix developers are certainly well taken care of, as are the Mac folks - and we have plenty of people using our TFS client on both those platforms.

    Just my $0.02 :-)

    Martin.

     

    Friday, January 19, 2007 9:35 AM
  • > TFS Does support cross platform development.
    Ok. There is one company with an eclipse plugin. But the price for that is very high. Subclipse e.g. is an open source / free plugin.
    And there is no TFS server available on other platforms - because MS wants the customer to buy Windows Server, SQL Server, ...
    With SVN, Clearcase, ... I have the free choice of the server platform too.

    There are much more SVN plugins / tools there because it is open source and there are no license problems (e.g. the Visual Studio SCCS)

    For me SVN with Edgewall Trac is more than I need (Wiki, Bugtracker, Roadmap, Timeline, ...). An easy to use, very flexible and open source!

    Sourceforge is using SVN too - should they use TFS in future?

    Monday, January 29, 2007 6:03 PM
  • > Sourceforge is using SVN too - should they use TFS in future?

    Errm.  No.  If you wanted a Sourceforge like site that was using TFS, then check out the excellent CodePlex site (http://www.codeplex.com).

    You are correct that you need a Microsoft platform to run TFS on.  For the kind of organizations that TFS is aimed at, this is not a problem.  Considering how new TFS is, the adoption has been staggeringly high.  However, I don't expect SVN or indeed any other of the major source control vendors to be going away any time soon - which is a good thing as far as I am concerned.

    I am not saying that everyone should use TFS Version Control, or that TFS version control component is "better" then SVN.  Folks should use the tools that best match their needs.  It sounds like you have found and integrated together a good toolset for you which is great.

    Monday, January 29, 2007 6:36 PM
  • >If you wanted a Sourceforge like site that was using TFS, then check out the excellent CodePlex site (http://www.codeplex.com).
    I dont like the codeplex site because you cannot see the progress in the project like in Edgewall Trac.
    And to compare codeplex with sourceforge is very nice :) Sourceforge:
    Registered Projects: 140,032, Registered Users: 1,496,551

    I think codeplex is a small MS playground. Sourceforge is a real community. I have not yet seen any open source or community project from MS which is actively developed / accepted by the community. I think this is a.) a licensing and b.) a cultural problem in the windows community. I know that MS has some open source projects - but nobody cares about.
    See http://www.codeplex.com/IronPython/Release/ProjectReleases.aspx the IronPython development page. The releases are from
    Okt-2006 - is this an active community?

    I am using a lot of open source software - all my private stuff is open source (Linux, ...). It is very interesting for me as programmer too - because you will be part of a very nice community. I have never seen something similar in the MS world.

    The open source community knows very well how to develop software in a distributed way. Do you know SVK, git, mono arch or monotone? These are decentralised SCM systems. You can use SVK if you are using SVN on a travel if you do not have a connection to the SVN server. You can make your changes offline - and can commit to your local repository on your laptop.
    Another example: linux kernel, apache webserver, edgewall trac (and all other OSS projects) itself are developed from people around the world - and the tools (SCM tools) are very well tested because they use them every day :) Why should any of these projects use a commercial tool?

    For the case SVN: there are a lot of OSS projects which use the SVN backend filesystem (e.g. SVK, FSVS, catacomb, ...). This is not possible with an commercial application.
    Tuesday, January 30, 2007 7:40 AM
  • I have personal experience with the both the Teamprise Eclipse plugin and the standalone client. I have to say that they are nowhere near the level of Visual Studio's Team Explorer in terms of functionality. IMHO any Java developer wishing to use TFS (or being forced to use TFS) should suck it up and write C# or J# code instead. It's that painful...
    Wednesday, February 07, 2007 7:43 PM
  • Merge tracking is not yet included - but I do not see any problems about this. You should know what you are working on. We use SVN in big projects too - no problems.

    Sorry, this attitude simply does not scale.  We have about 75 branches and up to 3 million files in each branch.  Windows & Office are an order of magnitude bigger still.  2-way (baseless) merging is completely out of the question.

    I have not yet seen any open source or community project from MS which is actively developed / accepted by the community.

    Really?  Search on SourceForge for Windows projects.  There are tons.  I participate in several.

    I have personal experience with the both the Teamprise Eclipse plugin and the standalone client. I have to say that they are nowhere near the level of Visual Studio's Team Explorer in terms of functionality. IMHO any Java developer wishing to use TFS (or being forced to use TFS) should suck it up and write C# or J# code instead. It's that painful...

    Have you tried TeamPrise 2.0?  It's vastly improved.

    Wednesday, February 07, 2007 9:17 PM
  • Sorry you didn't have a good experience with Teamprise.  If you want to drop me a line at martin@teamprise.com I would love to know what your difficulties were.  The feedback we have been getting over the past year or so has been overwhelmingly positive so I would love to know what the issues were and see if we can stop you from resorting to C#.  Well C# is ok, but J# - surely things were not that bad :-)

    If anyone has any general questions or comments about Teamprise then please head over to the teamprise forums http://support.teamprise.com or contact me directly if you prefer.

    Many thanks,

    Martin.

    Wednesday, February 07, 2007 11:28 PM
  • >Sorry, this attitude simply does not scale. We have about 75 branches and up to 3 million files >in each branch. Windows & Office are an order of magnitude bigger still. 2-way (baseless) >merging is completely out of the question.
    I did not know that they use TFS for the linux kernel development :) I thought they use git - a decentralized SCM system. Is TFS a decentralized SCM (like git, monotone, GNU arch)?
    I think it is not the question about the tool - you can be productive with all of them. I like SVN and SVK - because they are easy to use and can be combined with a lot of other OSS (maven, trac, cruisecontrol, etc.)
    If I need merge tracking in SVN I can use svnmerge (see http://subversion.tigris.org/merge-tracking/).

    >
    Really? Search on SourceForge for Windows projects. There are tons. I >participate in several.
    I said "
    community project from MS
    " not "for the MS platform windows".
    Thursday, February 08, 2007 6:45 AM
  • this is wrong comparison.
    you have to compare
    Team Foundation Version Control vs Subversion
    ________________________
    Team Foundation = Subversion(with apache)+Nant+CCNET+TortoiseSVN+Ankh+Gemini
    Friday, March 02, 2007 8:42 AM
  • Our organization moved from VSS to SVN. I can tell you that SVN is better by leaps and bounds over VSS.

    I've never tried TFS, but it seems quite interesting to me. The SQL Server backend seems to be a definite strong point.

    I'm not sure about the lifecycle of TFS version control, but our developers love the edit-merge-commit cycle in SVN. I can't imagine going back to a VSS checkout-edit-checkin lifecycle.

    We have had issues, however, finding plugins integrated into the IDE. We've been using Ankh, but some developers complain that Ankh doesn't commit propertly.

    Just my $0.02. I guess your choice of SCM system depends on your setup.
    Thursday, August 07, 2008 3:23 PM
  • Well, SVN against good-old VSS is not fair... Poor VSS is worse than anything else I'm afraid... :-P

     

    SQL backend is definitely a strong point! That's basically why we decided to introduce it in our product (but we also support MySql & Firebird, distributed, merge tracking... and many more :-P).

     

    How is it going with SVN so far?

     

    Saturday, August 09, 2008 5:45 PM
  • Hi John,

    I've done an unbiased comparison of TFS vs SVN using a "Decision Matrix" and published it here - http://hygen.net/blog/linux/microsoft-tfs-vs-subversion-svn.html

    Regards,

    Dan

    Monday, January 17, 2011 9:37 AM