Courseiva
Design and implement a source control strategyeasyMultiple ChoiceObjective-mapped

AZ-400 Practice Question: Design and implement a source control strategy

Your team is migrating from TFVC to Git in Azure Repos. You need to preserve the full history of the TFVC repository, including all branches and changesets. The TFVC repository is large (over 10 GB). Which tool should you use to perform the migration?

⚠ Common exam trap

A common mix-up: candidates confuse git-tfs with git-svn, assuming any 'git-*' tool works for any version control system, but git-svn only works with Subversion, not TFVC.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

Use git-tfs to clone the TFVC repository and then push to Azure Repos.

B is correct because git-tfs is specifically designed to bridge TFVC and Git, allowing you to clone a TFVC repository (including all branches, changesets, and history) into a local Git repository, which can then be pushed to Azure Repos. It handles large repositories (over 10 GB) by performing an incremental clone, preserving the full history without manual recreation.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • Manually recreate the commits in a new Git repository.

    Why it's wrong here

    Manually recreating commits loses all historical changeset data, including original authors, dates, and branch structure. This approach is highly error-prone and does not provide a faithful migration, as it effectively creates a new repository with no linkage to the TFVC history.

  • Use git-tfs to clone the TFVC repository and then push to Azure Repos.

    Why this is correct

    git-tfs is a specialized bridge that clones a TFVC repository into a local Git repository while preserving the full history of changesets, branches, and merges. It is designed for large TFVC repos, and after cloning, you can push the Git repository to Azure Repos, making it the correct migration path.

  • Use git-svn to convert TFVC to Git.

    Why it's wrong here

    git-svn is a tool for bridging Git with Subversion (SVN), not TFVC. TFVC uses a completely different version control model and client API, so git-svn cannot read or convert TFVC history, making it unsuitable for this migration.

  • Use the Azure DevOps Migration Tools to export TFVC to Git.

    Why it's wrong here

    The Azure DevOps Migration Tools are intended for moving work items, test plans, and other data between Azure DevOps organizations or projects. They do not convert TFVC source control to Git, so using them would not achieve the desired migration.

About these practice questions

Courseiva writes every AZ-400 question from scratch — 823 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This AZ-400 practice question is part of Courseiva's free Microsoft certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the AZ-400 exam.