迁移后链接打不开,通常是因为原样搬运了旧URL,而目标系统给对象分配了新ID。保留链接的做法是:先把源链接拆成链接类型、指向对象、定位键、展示文本四类信息,建立源对象ID到目标对象ID的对照表,再用新ID重建链接,最后做抽样与全量核验。跨系统迁移无法保证每条链接完全等价,需要提前划清可自动重建、需人工处理和只能降级为文本的范围。以下按范围界定、前置准备、映射规则、重建执行、核验留存、回退停止六个环节展开。
要点总览(TL;DR)
- 链接保留的核心做法是把源链接拆成链接类型、指向对象、定位键、展示文本四类信息,建立源对象ID到目标对象ID的对照表,再用新ID重建链接,不原样搬运旧URL。
- 映射规则按链接类型分别定义:内部互链用对象ID映射,文档内链等页面迁移完成后按新路径重建,附件引用在附件迁移后替换地址,外部URL原样保留并单独登记。
- 执行顺序为先对象后链接,按内部互链、文档内链、附件引用分批重建,每类先取20至50条试跑确认跳转行为,再扩大批量并逐条记录处理状态。
- 核验分抽样与全量两层:分层抽样逐条点击确认跳转目标正确,全量用清单比对数量与对应关系,降级为文本的链接单独成表说明原因与责任人。
- 批量写入前设定停止条件与回退点,对象ID对照表缺失、目标对象未迁完或抽样错误率超阈值时暂停,保留快照与处理记录以便二次执行。
迁移链接保留的来源、目标与范围
链接迁移的第一步是把边界写清楚,否则后续映射和核验都缺少统一口径。范围清单至少包含四项:源系统与目标系统、链接类型、对象范围、排除项。
源系统与目标系统要写明产品名称、版本和访问方式(内网地址、公网域名、单点登录入口等)。同一产品不同版本的对象标识规则可能不同,版本信息直接影响定位键的选择。迁移方向固定为源到目标,清单中应明确标注,避免执行时把目标侧数据回写源系统。
需要保留的链接类型通常包括:
- 工作项互链:缺陷关联需求、任务阻塞关系、跨项目引用等;
- 需求与任务关联:需求条目指向实现任务或测试用例;
- 文档内链:知识库页面之间、页面指向工作项的链接;
- 附件引用:正文或评论中指向附件的地址;
- 外部URL:指向外部网站、第三方系统或已下线系统的链接。
对象范围要落到可执行粒度:哪些项目、哪些空间、哪个时间段内创建的链接纳入本次迁移。范围过大可以分批,但每批都要有独立的清单和核验记录。流程与插件行为的迁移、迁移结果的整体切换管理不在本文展开,链接迁移只对“地址能否正确跳转”负责。
本环节的交付物是一份链接迁移范围清单,建议包含:源系统及版本、目标系统及版本、纳入的链接类型、纳入的项目与时间范围、排除项及排除理由、清单负责人。
链接保留需要哪些输入与前置依赖
链接重建依赖对象、用户、附件三类数据先到位。开始写入前,按下表逐项确认,缺项会导致重建中途返工。
| 输入项 | 内容要求 | 缺失后果 |
|---|---|---|
| 源链接清单 | 源链接地址、链接类型、源对象ID、目标对象ID、展示文本、所在字段或正文位置 | 无法建立映射,重建无依据 |
| 目标对象ID | 目标系统对象创建后的ID,或可查询的ID对照表 | 只能按标题猜测,易错配 |
| 用户身份映射表 | 源系统账号到目标系统账号的对应关系 | 链接涉及的创建人、负责人信息错位 |
| 附件与文档迁移状态 | 附件、页面是否已迁移完成并取得新地址 | 内链指向不存在的目标 |
| 权限与窗口 | 源系统导出权限、目标系统写入权限、迁移窗口、冻结写入安排 | 导出不全或写入冲突 |
源链接清单的导出方式取决于源系统能力:有开放接口的按接口分页导出,没有接口的用报表或数据库查询导出。导出后先做一次数量核对,确认清单条数与源系统中可检索到的链接数量在同一量级,偏差过大说明导出条件遗漏了项目或字段。
迁移窗口内应冻结源系统的写入,尤其是会新增链接的操作。冻结期间产生的链接不在本次清单内,需要在窗口结束后补导一次增量清单,否则这部分链接会静默丢失。目标系统的写入权限要覆盖所有需要重建链接的对象类型,权限不足时批量写入会部分失败,失败记录必须保留。
链接分类与字段映射规则怎么定
同名字段含义不同、链接指向对象变化,是映射阶段的两个主要问题。解决方式是按链接类型分别定义定位键和重建方式,而不是对所有链接套用一条规则。
先做链接分类。把源链接清单逐条归入下表五类,并为每类确定定位键、重建方式和异常标记。
| 链接类型 | 推荐定位键 | 重建方式 | 异常标记 |
|---|---|---|---|
| 内部对象互链 | 源对象ID经对照表映射后的目标对象ID | 用新ID拼接目标系统地址 | 对照表无记录时标“待人工” |
| 文档内链 | 目标页面ID或页面路径 | 页面迁移完成后按新路径重建 | 页面未迁移时标“阻塞” |
| 附件引用 | 附件在目标系统的存储地址或附件ID | 附件迁移完成后替换地址 | 附件缺失时标“待补” |
| 外部URL | 原始地址 | 原样保留,单独登记 | 无法访问时标“失效” |
| 已失效链接 | 无 | 降级为文本说明 | 记录原因与处理人 |
定位键的选择要稳定。对象ID在系统内唯一且不随标题修改变化,优先使用;业务编号在团队内有约定时可以辅助核对,但不能单独作为定位键;标题加项目路径只适合作为人工复核的参考,因为标题可能重复或被改写。当源系统字段与目标系统字段同名但含义不同时,以“该字段是否唯一标识对象”为判断标准,含义不一致的同名字段不进入定位键,改由ID对照表承担映射职责。
对象ID对照表是重建链接的唯一依据。它的生成方式是:先完成对象迁移,从目标系统导出新对象清单,按源对象ID与目标对象ID逐行配对。配对可以借助迁移工具输出的映射结果,也可以按项目加标题加创建时间做初步匹配再人工确认。对照表要包含源对象ID、目标对象ID、对象类型、所属项目、匹配方式和确认状态,匹配方式一列区分“工具输出”“规则匹配”“人工确认”,便于后续抽查。
展示文本与链接地址分开处理。地址按映射规则重建,展示文本一般沿用原文;当原文展示的是旧编号或旧标题时,按团队约定改写,改写规则写进映射规则表,避免执行人各自发挥。无法映射的链接统一标记为待人工处理,保留原始地址和所在位置,不静默丢弃。
按映射表重建链接的执行方法
执行顺序遵循“先对象、后链接”。目标对象尚未创建完成时写入链接,只会产生指向空地址的记录,后续还要清理。
- 确认对象迁移完成。按项目核对目标系统对象数量与源清单一致,导出目标对象ID,更新对照表的确认状态。
- 按链接类型分批重建。第一批处理内部对象互链,第二批处理文档内链,第三批处理附件引用,外部URL单独登记不参与批量写入。
- 小样本试跑。每类链接先取20至50条写入目标系统,逐条点击确认跳转目标、地址格式和权限可见性,确认无误后再扩大批量。
- 批量写入并记录结果。每条链接记录处理状态:已重建、已降级、待人工,同时记录写入批次和时间。
- 处理异常清单。待人工链接由指定责任人逐条判断,能补映射的补映射,不能补的降级为文本并注明原因。
在ONES中执行这类重建时,工作项之间的关联关系随工作项迁移建立,文档内链依赖页面迁移完成后的新地址。ONES的Jira迁移方案覆盖项目、工作项、状态、字段、附件和历史记录,Confluence迁移方案覆盖空间、页面、附件和权限结构,迁移完成后团队可以在ONES Project和ONES Wiki中继续维护关联与引用。链接地址的具体重建机制和对象ID对照表的提供方式,需要在迁移前与实施方确认,并纳入试跑验证项。
批量写入前保留目标系统状态快照或确认批次可撤销,是后续回退的前提。写入脚本或工具的输出日志要按批次保存,日志中至少包含源链接、目标链接、处理状态和失败原因。
链接保留的核验与证据留存
核验分两层:抽样确认“点得开、跳得对”,全量确认“数量对得上、对应关系不错”。
抽样核验按链接类型和项目分层。每类链接、每个项目各抽取一定比例,逐条点击,确认跳转后的对象与源链接指向的是同一业务对象,而不只是页面能打开。抽样比例根据链接总量和风险承受度设定,关键项目可以提高比例直至全量。
全量核验用清单比对完成:以源链接清单为基准,逐行检查目标侧是否存在对应记录,统计已重建、已降级、待人工三类数量,核对总数与源清单一致。比对脚本或表格要能定位到具体行,发现缺行时回到对照表查原因。
核验证据包括:链接对照表(含匹配方式和确认状态)、抽样记录(抽样对象、核验人、核验时间、结论)、异常清单(链接、原因、处理人、处理结论)。降级为文本的链接单独成表,写明降级原因和后续处理责任人,避免在验收时被当作遗漏。
链接迁移的回退与停止条件
停止条件用于在问题扩大前中断执行,回退点用于把目标系统恢复到可重来的状态。两者都应在批量写入前确定并书面确认。
| 判定项 | 停止条件示例 | 处置动作 |
|---|---|---|
| 对象ID对照表 | 缺失,或抽样发现大面积错配 | 暂停写入,补齐对照表后重跑试跑 |
| 目标对象 | 对象迁移未完成或数量与源清单不符 | 先完成对象迁移再恢复链接重建 |
| 抽样跳转 | 错误率超出预设阈值 | 停止当前批次,排查映射规则 |
| 写入失败 | 批量写入失败比例异常升高 | 中止批次,检查权限与地址格式 |
回退点设在每次批量写入之前,保留目标系统状态快照或确保该批次可撤销。回退后源链接清单、对照表和处理记录全部保留,二次执行时从最近一个确认过的批次继续,不重复处理已核验的链接。待人工链接在回退时一并交接,明确责任人和处理时限,避免迁移结束后无人跟进。
常见问题
源系统没有开放接口,链接清单导不出来怎么办?
可以改用报表导出或数据库查询导出,导出后先做数量核对:清单条数与源系统中可检索到的链接数量应在同一量级,偏差过大说明导出条件遗漏了项目或字段。导出内容至少覆盖源链接地址、链接类型、源对象ID、目标对象ID、展示文本和所在字段或正文位置。若只能分批导出,按项目或时间段拆分,每批单独编号并记录导出时间,便于后续与核验清单对应。
链接指向的对象在目标系统里改了标题或编号,展示文本要不要跟着改?
展示文本与链接地址分开处理。地址按映射规则用新ID重建,展示文本一般沿用原文;当原文展示的是旧编号或旧标题、读者会因此误解时,按团队事先约定的改写规则统一调整,并把规则写进映射规则表,避免执行人各自发挥。定位键仍以对象ID为准,标题和编号只作为人工复核参考,不承担映射职责。
迁移窗口结束后源系统又新增了链接,这部分怎么处理?
迁移窗口内应冻结源系统写入,冻结期间新增的链接不在本次清单内。窗口结束后补导一次增量清单,单独作为一批处理:先确认这些链接指向的对象是否已在目标系统存在,再按同样的映射规则重建,并纳入核验记录。增量批次的处理结果与主批次分开统计,避免总数核对时口径混淆。
使用ONES做迁移时,链接重建能自动完成到什么程度?
ONES的Jira迁移方案覆盖项目、工作项、状态、字段、附件和历史记录,Confluence迁移方案覆盖空间、页面、附件和权限结构,迁移完成后团队可以在ONES Project和ONES Wiki中继续维护工作项关联与文档引用。链接地址的具体重建机制、对象ID对照表的提供方式,以及无法映射链接的处理方式,需要在迁移前与实施方确认,并列入试跑验证项,不宜在方案阶段直接假定为全自动。
降级为文本的链接,验收时怎么说明才不算遗漏?
把降级链接单独成表,逐条写明原始地址、所在位置、降级原因、处理责任人和处理时限,并在核验汇总中与已重建、待人工两类数量并列统计,使三类之和与源清单总数一致。验收时以这张表说明哪些链接无法等价重建及其原因,后续由责任人按约定时限判断是否补映射或维持文本说明。


















