WARNING: This tool is not designed for a novice. This tool was developed to support the scenarios below, and the edge cases that have been encountered by the 30+ contributors from around the Azure DevOps community. You should be comfortable with the TFS/Azure DevOps object model, as well as debugging code in Visual Studio.Community support is available through GitHub and StackOverflow; Paid support is available through our recommended consultants as well as our contributors and many DevOps consultants around the world.
What can you do with this tool?
Migrate Work Items, TestPlans & Suits, Teams, Shared Queries, Pipelines, & Processes from one Team Project to another
Migrate Work Items, TestPlans & Suits, Teams, Shared Queries, Pipelines, & Processes from one Organisation to another
Bulk edit of Work Items accross an entire Project.
What versions of Azure DevOps & TFS do you support?
Work Item Migration Supports all versions of TFS 2013+ and all versions of Azure DevOps
You can move from any Tfs/AzureDevOps source to any Tfs/AzureDevOps target.
Process Template migration only supports XML based Projects
Typical Uses of this tool
Merge many projects into a single project
Split one project into many projects
Assistance in changing Process Templates
Bulk edit of Work Items
Migration of Test Suites & Test Plans
new Migration of Builds & Pipelines
Migrate from one Language version of TFS / Azure Devops to another (new v9.0)
new Migration of Processes
NOTE: If you are able to migrate your entire Collection to Azure DevOps Services you should use Azure DevOps Migration Service from Microsoft. If you have a requirement to change Process Template then you will need to do that before you move to Azure DevOps Services.
v11.11 - Refactored revision manager to have more tests and support limiting the number of revisions. CollapseRevisions has been replaced by setting MaxRevisions to 1 and setting AttachRevisionHistory to true; MaxRevisions sets the maximum number of revisions that will be migrated. "First + Last*N = Max". If this was set to 5 and there were 10 revisions you would get the first 1 (creation) and the latest 4 migrated. This is done after all of the existing revisions are created but before anything newer that target is removed.
v11.10 - Added ability to limit the number of revisions migrated with MaxRevisions on WorkItemMigration processor. 0 = All, and any other number should migrate the first revision + the latest up to MAX.
v11.9 - Dark launch of Process migration by @akanieski
v11.9 - Dark launch of Pipelines & Builds migration by @tomfrenzel
v11.8 - As part of moving to the new architecture we moved to default newtonsoft type handling with $type properties instead of ObjectTypeTo Migrate rename "ObjectType" to "$type" in your configuration!
v11.5 - Added more useful logging levels. Replace "TelemetryEnableTrace": false with "LogLevel": "Verbose" in the config. Verbose will only be logged to the logfile.
v11.2.1 - Removed NodeMigrationContext and converted it to an enricher for Work Items. Still needs work, so that it migrates individual nodes, but currently migrates all.
v10.1 - Changed config design to have only the Name and not FullName of the class. Remove MigrationTools.Core.Configuration.FieldMap. and MigrationTools.Core.Configuration.Processing. from the config leaving only the Name of the class in ObjectType field.
v10.0 - Start of the great refactor over to .NET Core and the REST API as the Object Model has been retired.
v9.0 - Added support for migration between other language versions of Azure DevOps. Developed for German -> English
v8.9 - Added 'Collapse Revisions' feature to collapse and attache revisions instead of replaying them
v8.8 - 'SkipToFinalRevisedWorkItemType' feature added to handle scenario when changing Work Item Type
v8.7 - Support for inline images using a Personal Access Token added to the Source Project
v8.6 - Support for fixing links from TFVC Changesets to Git Commits using a mapping file generated from a Git-TFS migration.
v8.5 - Attachment Max size and linking work items to git repos between projects.
v8.4 - Support for cross-project linking of work items between projects.
v8.3 - Support for restarting the migration and syncing at the revision level.
v8.2 - Merge Git commit Fixing into Work Item migration (requires repos to be migrated first, can be rerun)
v8.0 - Merge of Work Item, Link, & attachment migrators into one.