Whenever I present TFS or Visual Studio Online (VSO), somebody asked me “how to choose the type of the sourcecode repository: GIT or TFVC?”.
The main difference is that TFVC is based on a central server while GIT is based on distributed databases. For GIT, there are also some limitations about the security to some part of code (folder, file, …).
More info on MSDN pages: http://tiny.cc/grizxx
Main TFVC advantages are:
- Code is centralized on a server.
- Security is more important: repository, folders, files.
- Branching are used to manage releases and avoid risks.
- Integrated since Visual Studio 2010.
- Team can be small or large.
Main GIT advantages are:
- Code is distributed on servers and all developers environments (PC).
- Branching are fundamentally integrated in GIT process: light and used by all developers.
- History is available offline.
- Using many 3-tiers tools: TortoiseGit, GitHub, …
- Team can be small or based on “Open source” philosophy (but not adapted for large team… in this case, you must split your large team to multiple small teams).