TFVCからGitへのマイグレーション
Team Foundation Server(TFS)、2019年にAzure DevOpsServerと改名された、Microsoftによって開発されたツールのセットで、Team Foundation Version Control (TFVC)、Gitに似た集中型バージョン管理システムも含まれています。
この文書では、TFVCからGitへのマイグレーションに焦点を当てます。
TFVC と Git の比較
TFVCとGitの主な違いは以下の通りです:
- Gitはディストリビューション:TFVCがクライアント・サーバー・アーキテクチャを使った集中型であるのに対して、Gitは分散型です。リポジトリ全体のコピーで作業するため、Git の方が柔軟なワークフローを実現できます。これにより、たとえばブランチの切り替えやマージなどを、リモートサーバーと通信することなく素早く行えるようになります。
- 保管:集中管理型のバージョン管理システムでの変更はファイル単位(チェンジセット)ですが、Gitではコミットされたファイルは全体(スナップショット)で保存されます。つまり、Gitでは変更全体を戻したり元に戻したりするのがとても簡単なのです。
詳細については
- MicrosoftによるGitとTFVCの比較。
- ウィキペディアのバージョン管理ソフトウェアの比較
マイグレーションの理由
Git/GitLabにマイグレーションするメリット:
- ライセンス費用がかかりません:Gitはオープンソースですが、TFVCはプロプライエタリです。
- 学習曲線が短いGit には大きなコミュニティがあり、膨大な数のチュートリアルがあります(Git のトピックを参照)。
- 最新のツールとのインテグレーション:GitとGitLabにマイグレーションした後は、バージョン管理、イシュー・トラッキング、コードレビュー、CI/CDなどが組み込まれた、オープンソースのエンドツーエンドのソフトウェア開発プラットフォームを手に入れることができます。
マイグレーション方法
TFVCからGitへのマイグレーションオプションは、オペレーティングシステムによって異なります。
- Microsoft Windows でマイグレーションを行う場合は、
git-tfs
ツールを使用します。詳しくはTFSからGitへのマイグレーションをご覧ください。 - Unixベースのシステムの場合は、このTFVCからGitへのマイグレーション・ツールで説明されている手順に従ってください。