TFS is a set of tools developed by Microsoft which also includes a centralized version control system (TFVC) similar to Git.
In this document, we emphasize on the TFVC to Git migration.
The following list illustrates the main differences between TFVC and Git:
- Git is distributed whereas TFVC is centralized using a client-server architecture. This translates to Git having a more flexible workflow since your working area is a copy of the entire repository. This decreases the overhead when switching branches or merging for example, since you don't have to communicate with a remote server.
- Storage method. Changes in CVS are per file (changeset), while in Git a committed file(s) is stored in its entirety (snapshot). That means that's very easy in Git to revert or undo a whole change.
Migrating to Git/GitLab there is:
- No licensing costs, Git is GPL while TFVC is proprietary.
- Shorter learning curve, Git has a big community and a vast number of tutorials to get you started (see our Git topic).
- Integration with modern tools, migrating to Git and GitLab you can have an open source end-to-end software development platform with built-in version control, issue tracking, code review, CI/CD, and more.