Skip to main content

用于从 GitHub Enterprise Server 迁移到 GHE.com 的实时迁移数据

实时迁移中包括哪些数据和实时更新?

注意

Enterprise Live Migrations 位于 公共预览版,可能会有变动。

迁移的数据

          ELM 迁移几乎所有存储库级数据。 组织级资源(如团队、项目和组织设置和 Webhook)已从迁移中排除,必须在目标上手动配置。

唯一支持的 ELM 组织级别操作是创建目标组织帐户(如果尚不存在)。

存储库设置和配置

ResourceNotes
存储库元数据和设置可见性、说明、默认分支和已启用的功能
仓库网络钩子存储库的 Webhook 配置
仓库主题用于对存储库进行分类的标记
存储库 PR 设置拉取请求合并和查看设置
操作设置存储库级GitHub Actions配置,包括允许的操作和权限
自动链接自定义自动链接引用
分支保护分支保护规则
页面GitHub Pages 配置

Git 数据、LFS 和 Wiki

ResourceNotes
Git 存储库(refs、objects、history)包括所有 refs、对象和提交历史记录。 在整个迁移过程中,存储库会保持目标的最新状态。
LFS 对象Git 大型文件存储对象。 要求在源 GitHub Enterprise Server 实例上启用 LFS。
维基Wiki Git 存储库

问题、评论和反应

ResourceNotes
问题包括状态、被分配者和正文
问题评论有关问题的所有评论
问题反应有关问题的反应
问题评论反馈有关问题评论的反馈
问题标签有关问题的标签关联
问题事件时间线事件(已分配、标记、已关闭等)
关闭问题引用关闭问题的相关引用(例如“解决问题 #123”)

拉取请求、代码审查和讨论线程

ResourceNotes
拉取请求包括状态、审阅者、内容和草稿状态
PR 评论提交的评审,包括已批准、请求更改和评论的状态
PR 审阅注释内联代码评审注释
PR 评审讨论线程线程讨论,包括已解决和未解决的状态
PR 评论反应合并请求审查评论的反馈
PR 标签拉取请求的标签关联

标签、里程碑、发布和 CI

ResourceNotes
标签标签定义,包括名称、颜色和说明
里程碑里程碑定义和状态
Releases发布元数据,包括标记、名称、正文和预发布或草稿状态
释放反应有关发布的反应
提交注释对单个提交的注释
提交状态检查提交时 CI/CD 状态检查
检查运行状态检查运行结果
检测套件检查套件分组
团队存储库权限团队与存储库权限的关联

二进制资产和文件附件

ResourceNotes
发布资源关联到发布的二进制资产,每个资产最多 2 GB
附件嵌入在问题和拉取请求正文中的图像和视频文件附件
存储库文件(非媒体附件)与问题和拉取请求关联的非媒体文件附件,例如 PDF 和文本文件

用户和模特

ResourceNotes
模特迁移数据中引用的每个GitHub企业服务器用户都被表示为一个占位符:没有组织成员资格或库访问权限的标识。 迁移完成后,可以通过将它们与实际用户帐户相关联来回收模特。

不迁移的数据

存储库数据

DataNotes
存储库默认值N/A
存储库规则集仅迁移分支保护规则。
从分叉拉取请求N/A
待处理的拉取请求评审仅迁移提交的评论。

组织数据

组织级别数据(例如以下内容)迁移:

  • Settings
  • 团队
  • 项目
  • Webhooks

实时更新中包含的事件

初始回填完成后,导出程序的事件侦听器监视GitHub Enterprise Server上的Webhooks,以捕获正在进行的更改,并将这些更改转发到目标企业的迁移服务。

下表记录了哪些资源类型支持实时更新以及处理哪些 Webhook 操作。

资源类型支持的事件不支持的事件
Repositoryedited
          `archived`、`deleted`、`privatized`、`publicized`、`renamed`、`transferred`、`unarchived` |

| Issues | assignedclosededitedlabeledopenedreopenedunassignedunlabeledmilestoneddemilestoned | deletedlockedpinnedtransferredunlockedunpinned | | 问题注释 | creatededited | deleted | | 拉取请求 | assigned、、closedconverted_to_draft``editedlabeledopened``ready_for_review``reopened``unassignedunlabeled、、 milestoned``demilestoned | auto_merge_disabledauto_merge_enableddequeuedenqueuedlockedreview_request_removedreview_requestedsynchronizeunlocked | | 拉取请求评审 | editedsubmitted | dismissed | | 合并请求评审评论 | edited | createddeleted | | 拉取请求评审线程 | resolvedunresolved | N/A | | 标签 | created | deletededited | | 发布 | creatededitedprereleasedpublishedreleasedunpublished | deleted | | 里程碑 | closedcreatededitedopened | deleted | | 分支保护规则 | creatededited | deleted | | 提交注释 | creatededited | deleted | | 页面生成 | 所有操作 | N/A | | 提交状态检查 | 所有操作 | N/A | | 维基 | 所有操作 | N/A | | 自动链接 | createddeleted | N/A | | 关闭问题引用 | created | N/A | | 反应 | createddeleted | N/A | | 存储库操作设置 | updated | N/A | | 存储库 Webhook | createdupdated | N/A |

注意

提交拉取请求评审后,ELM 将完整评审内容(包括所有内联注释)一起导入。 作为初始评审提交的一部分的内联注释已正确迁移。 但是,在 提交评审后添加到审阅线程 的答复不会捕获为实时更新,不会显示在已迁移的存储库中。

实时更新中不包含的数据

以下内容仅在初始回填期间导出, 并且不会 由 Webhook 更新:

  • 检查运行状态
  • 检测套件
  • GitHub Pages 配置

对源存储库内的引用(例如用户提及或指向同一存储库中问题和拉取请求的链接)进行重写,以确保在迁移后仍能正确指向资源。

不同存储库的引用(例如,从拉取请求中指向存储库中某问题的链接)不会被迁移,迁移后将指向完全相同的目标。 即使引用的存储库已经迁移或正在迁移的过程中,该规则仍然适用。