Add TFS migration docs
This commit is contained in:
parent
a0c13698f9
commit
b0476ccfa6
|
|
@ -8,6 +8,7 @@
|
|||
1. [From SVN](svn.md)
|
||||
1. [From ClearCase](clearcase.md)
|
||||
1. [From Perforce](perforce.md)
|
||||
1. [From TFS](tfs.md)
|
||||
|
||||
In addition to the specific migration documentation above, you can import any
|
||||
Git repository via HTTP from the New Project page. Be aware that if the
|
||||
|
|
|
|||
|
|
@ -0,0 +1,43 @@
|
|||
# Migrating from TFS
|
||||
|
||||
[TFS](https://www.visualstudio.com/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.
|
||||
- **Changesets.** Changes in CVS are per file, while changes (commits) in Git
|
||||
they always refer to the whole project. One of the consequences of this is that
|
||||
it is very easy in Git to revert (create a change that undoes) or undo a whole
|
||||
change.
|
||||
|
||||
_Check also Microsoft's documentation on the
|
||||
[comparison of Git and TFVC](https://www.visualstudio.com/en-us/docs/tfvc/comparison-git-tfvc)
|
||||
and the Wikipedia article on
|
||||
[comparing the different version control software](https://en.wikipedia.org/wiki/Comparison_of_version_control_software)._
|
||||
|
||||
## Why migrate
|
||||
|
||||
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.
|
||||
- **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.
|
||||
|
||||
## How to migrate
|
||||
|
||||
The best option to migrate from TFVC to Git is to use the
|
||||
[`git-tfs`](https://github.com/git-tfs/git-tfs) tool. A specific guide for the
|
||||
migration exists:
|
||||
[Migrate TFS to Git](https://github.com/git-tfs/git-tfs/blob/master/doc/usecases/migrate_tfs_to_git.md).
|
||||
Loading…
Reference in New Issue