Friday, November 22, 2024
Migrating from Team Foundation Version Control (TFVC) to Git in Azure DevOps
Posted by
With Microsoft announcing that TFVC will no longer be available for new Azure DevOps projects in 2024, many teams must migrate their existing TFVC repositories to Git. In this blog post, we’ll walk you through the steps for migrating your TFVC repository to Git using Azure DevOps's built-in tools. Additionally, we’ll cover key limitations and provide insights to ensure a smooth migration.
Why Migrate from TFVC to Git?
TFVC is being phased out, as noted in Microsoft’s Azure DevOps Roadmap and TFVC Sunset Notice. Git offers a distributed version control system that aligns with modern DevOps workflows, making it the preferred choice for Azure DevOps repositories.
Pre-Migration Considerations
Before starting the migration, there are a few important points to consider:
- Only one branch from TFVC can be migrated to Git during the process.
- Commit history can be included in the migration, but only for the past 180 days.
- Files larger than 50 MB are not supported if you choose to include commit history. Without importing history, this restriction does not apply.
Step-by-Step Guide to Migrate from TFVC to Git
Navigate to your TFVC repository in Azure DevOps.
Go to the "Repos" section and select "Import Repository". This option allows you to migrate an existing repository into Azure DevOps Git.
Configure the Migration
- Choose "TFVC" as the repository type.
- Path: Specify the branch you want to migrate.
- Migrate History: Enable this option if you want to include commit history.
- Days: Specify up to 180 days for commit history.
- Name: Provide a name for the new Git repository.
Click "Import" to start the migration process. The time required depends on the repository size and commit history.
Once the migration is complete, review the new Git repository. Verify that the files, commit history (if included), and branch structure are correct.
Final Notes
Migrating from TFVC to Git ensures alignment with Azure DevOps's future roadmap while enabling modern workflows. Before starting, ensure your repository meets the file size and history requirements, back up your data, and be prepared to adjust your processes to leverage Git’s features like pull requests and branch policies. With proper preparation, the transition can be smooth and beneficial for your team’s development practices.