如何将Azure DevOps迁移全流程配置整合为单个JSON?v11.9.46适用
明确结论
完全可以把所有计划的迁移配置整合到单个JSON文件,不需要拆分多份独立配置。Azure DevOps Migration Tools v11.9.46的原生逻辑就是靠单配置内的Processors数组承载所有迁移步骤的定义、执行顺序和开关状态,只要按顺序把对应处理器配置加进去、开启启用开关就行。
对你草稿配置的适配调整(匹配你规划的4步迁移流程)
你列的迁移步骤顺序刚好和Processors数组从上到下的执行逻辑完全匹配,按以下调整即可:
- 第一步:区域与迭代迁移
保留现有的TfsAreaAndIterationProcessorOptions块,保持Enabled: true状态。注意把NodeBasePaths替换成你实际要迁移的区域、迭代路径,不要留草稿里的示例路径;如果不需要把项目名自动加在节点路径前,保持PrefixProjectToNodes: false即可。 - 第二步:团队设置迁移
把现有TfsTeamSettingsProcessorOptions块的Enabled从false改成true,这个处理器依赖第一步完成的区域/迭代节点,排在数组第二位的顺序是正确的。如果只需要迁移指定团队,可以把Teams字段填上团队名列表,留空则会迁移所有团队配置。 - 第三步:共享查询迁移
你当前草稿漏了这部分的处理器配置,需要在数组的对应位置插入SharedQueryMigrationProcessorOptions配置块,设置Enabled: true,指定要迁移的共享查询根路径即可,这个处理器直接复用全局定义的Source/Target端点,不需要单独配置连接信息。 - 第四步:工作项迁移
把现有WorkItemMigrationConfig块的Enabled从false改成true,按需求调整两个核心字段:- 把
WIQLQueryBit改成你需要的区域筛选条件,比如追加AND [System.AreaPath] UNDER '你的目标区域路径',和第一步迁移的区域路径保持一致 - 把
NodeBasePaths同步成和第一步一致的区域路径列表,保证工作项关联的区域节点能正确匹配
- 把
草稿里需要删除的冗余/错误配置
- 删掉所有重复定义的
Endpoints块:不管是注释掉的TfsTeamSettingsEndpoints,还是文件末尾重复的InMemoryWorkItemEndpoints,整个配置只需要保留一个全局Endpoints节点定义Source/Target端点即可,v11.9.46版本已经废弃单独为某类迁移定义独立端点的写法,保留会触发配置解析错误。 - 把
Source、Target节点里的AuthenticationMode从Prompt改成AccessToken,配上对应账号的PAT,避免每次执行手动输入认证信息。 - 把配置里的
"Version": "0.0"改成实际匹配的版本号"11.9.46",否则工具会按旧版配置schema解析,出现字段不识别的问题。
配置整合的使用提示
- 所有处理器共用同一套全局Source/Target连接配置,不需要为每个迁移步骤单独写连接参数
- 不需要为了分步执行拆配置文件:每次只把要执行的处理器
Enabled设为true,其他设为false即可,跑完一步再切换下一个处理器的开关,全程用同一个JSON就行。
内容的提问来源于stack exchange,提问作者LordRazon
相关产品推荐
相关产品推荐

