Migrating from TFS
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.
TFVC vs Git
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.