Skip to main content

Enterprise Server 3.21 目前作为发布候选版本提供。

回收 GitHub Enterprise Importer 的模型

迁移后,可以将占位符标识(模型)的历史记录分配给组织成员。

谁可以使用此功能?

Organization owners can reclaim mannequins.

运行迁移GitHub Enterprise ImporterEnterprise Live Migrations后,迁移存储库(Git 提交除外)中的所有用户活动都归因于称为 mannequins 的占位符标识。 有关详细信息,请参阅 模特和用户活动

回收模型

可以通过 GitHub CLI(推荐)或浏览器来回收模特。

注意

  • 将存储库转移到其他组织后,无法回收模型。 如果要在迁移后将存储库转移到另一个组织,必须在转移之前回收模型。
  • 收回人偶时,只能以现有组织成员为目标。 在尝试回收模特之前,请验证 GitHub 要邀请的用户是否已添加到组织。

GitHub Enterprise Importer 不会迁移用户对存储库的访问权限。 回收模型后,如果有任何用户尚未通过团队成员身份获得对存储库的适当访问权限,则必须单独向该用户授予对存储库的访问权限。 有关详细信息,请参阅管理个人对组织存储库的访问

使用 GitHub CLI 回收模特(推荐)

可以使用 GitHub CLI 逐个或批量回收模型。 有关如何安装和更新 GitHub CLI 迁移扩展的详细信息,请参阅 关于 GitHub Enterprise Importer

要使用的确切命令取决于所使用的扩展 GitHub CLI 。

回收使用GEI extension的人体模型

如果迁移源是 GitHub 产品,则可以使用 GEI extension of the GitHub CLI 回收人形模型。

  • 如果还没有为具有目标组织访问权限的 personal access token 设置 GH_PAT 环境变量,请将 --github-target-pat TOKEN 添加到下面的每个命令中,将 TOKEN 替换为 personal access token。 有关 personal access token 要求,请参阅 管理 GitHub 产品之间迁移的访问权限
  • 如果要迁移到 GHE.com,请添加 --target-api-url TARGET-API-URL,其中 TARGET-API-URL 是企业的子域的基本 API URL。 例如:https://api.octocorp.ghe.com
  1. (可选)要批量回收模型,请创建一个将模型映射到组织成员的 CSV 文件。

    • 要生成包含组织模型列表的 CSV 文件,请使用 gh gei generate-mannequin-csv 命令,将 DESTINATION 替换为目标组织,将 FILENAME 替换为生成的 CSV 文件的文件名。

      (可选)若要包含已回收的模型,请添加 --include-reclaimed 标志。

      Shell
      gh gei generate-mannequin-csv --github-target-org DESTINATION --output FILENAME.csv
      
    • 编辑 CSV 文件,添加与每个模型相对应的组织成员的用户名。

    • 保存文件。

  2. 要回收模型,请使用 gh gei reclaim-mannequin 命令。

    • 若要使用之前创建的映射文件批量回收模型,请将 DESTINATION 替换为目标组织,将 FILENAME 替换为映射文件的文件名。

      Shell
      gh gei reclaim-mannequin --github-target-org DESTINATION --csv FILENAME.csv
      
    • 要回收单个模型,请将 DESTINATION 替换为目标组织,将 MANNEQUIN 替换为模型登录名,并将 USERNAME 替换为与该模型对应的组织成员的用户名。

      如果有多个具有相同登录名的模型,可以将 --mannequin-user MANNEQUIN 替换为 --mannequin-ID ID,将 ID 替换为模型 ID。

      如果你的组织使用 Enterprise Managed Users 并且你想要跳过属性邀请以立即回收模特,请添加 --skip-invitation 自变量。

      Shell
      gh gei reclaim-mannequin --github-target-org DESTINATION --mannequin-user MANNEQUIN --target-user USERNAME
      

默认情况下,组织成员会通过电子邮件接收邀请,在成员接受邀请之前,不会回收模型。

使用 ADO2GH extension 回收人体模型

如果迁移源是 Azure DevOps,则可以使用 ADO2GH extension of the GitHub CLI 回收虚拟任务。

  • 如果还没有为具有目标组织访问权限的 personal access token 设置 GH_PAT 环境变量,请将 --github-target-pat TOKEN 添加到下面的每个命令中,将 TOKEN 替换为 personal access token。

  • 如果要迁移到 GHE.com,请添加 --target-api-url TARGET-API-URL,其中 TARGET-API-URL 是企业的子域的基本 API URL。 例如:https://api.octocorp.ghe.com

  1. (可选)要批量回收模型,请创建一个将模型映射到组织成员的 CSV 文件。

    • 要生成包含组织模型列表的 CSV 文件,请使用 gh ado2gh generate-mannequin-csv 命令,将 DESTINATION 替换为目标组织,将 FILENAME 替换为生成的 CSV 文件的文件名。

      (可选)若要包含已回收的模型,请添加 --include-reclaimed 标志。

      Shell
      gh ado2gh generate-mannequin-csv --github-org DESTINATION --output FILENAME.csv
      
    • 编辑 CSV 文件,添加与每个模型相对应的组织成员的用户名。

    • 保存文件。

  2. 要回收模型,请使用 gh ado2gh reclaim-mannequin 命令。

    • 若要使用之前创建的映射文件批量回收模型,请将 DESTINATION 替换为目标组织,将 FILENAME 替换为映射文件的文件名。

      Shell
      gh ado2gh reclaim-mannequin --github-org DESTINATION --csv FILENAME.csv
      
    • 要回收单个模型,请将 DESTINATION 替换为目标组织,将 MANNEQUIN 替换为模型登录名,并将 USERNAME 替换为与该模型对应的组织成员的用户名。

      如果有多个具有相同登录名的模型,可以将 --mannequin-user MANNEQUIN 替换为 --mannequin-ID ID,将 ID 替换为模型 ID。

      如果你的组织使用 Enterprise Managed Users 并且你想要跳过属性邀请以立即回收模特,请添加 --skip-invitation 自变量。

      Shell
      gh ado2gh reclaim-mannequin --github-org DESTINATION --mannequin-user MANNEQUIN --target-user USERNAME
      

默认情况下,组织成员会通过电子邮件接收邀请,在成员接受邀请之前,不会回收模型。

使用BBS2GH extension回收人体模型

如果迁移源是 Bitbucket 服务器,您可以使用BBS2GH extension of the GitHub CLI重新认领 mannequin。

  • 如果还没有为具有目标组织访问权限的 personal access token 设置 GH_PAT 环境变量,请将 --github-target-pat TOKEN 添加到下面的每个命令中,将 TOKEN 替换为 personal access token。 有关 personal access token 要求,请参阅 管理从 Bitbucket Server 迁移的访问权限
  • 如果要迁移到 GHE.com,请添加 --target-api-url TARGET-API-URL,其中 TARGET-API-URL 是企业的子域的基本 API URL。 例如:https://api.octocorp.ghe.com
  1. (可选)要批量回收模型,请创建一个将模型映射到组织成员的 CSV 文件。

    • 要生成包含组织模型列表的 CSV 文件,请使用 gh bbs2gh generate-mannequin-csv 命令,将 DESTINATION 替换为目标组织,将 FILENAME 替换为生成的 CSV 文件的文件名。

      (可选)若要包含已回收的模型,请添加 --include-reclaimed 标志。

      Shell
      gh bbs2gh generate-mannequin-csv --github-org DESTINATION --output FILENAME.csv
      
    • 编辑 CSV 文件,添加与每个模型相对应的组织成员的用户名。

    • 保存文件。

  2. 要回收模型,请使用 gh bbs2gh reclaim-mannequin 命令。

    • 若要使用之前创建的映射文件批量回收模型,请将 DESTINATION 替换为目标组织,将 FILENAME 替换为映射文件的文件名。

      Shell
      gh bbs2gh reclaim-mannequin --github-org DESTINATION --csv FILENAME.csv
      
    • 要回收单个模型,请将 DESTINATION 替换为目标组织,将 MANNEQUIN 替换为模型登录名,并将 USERNAME 替换为与该模型对应的组织成员的用户名。

      如果有多个具有相同登录名的模型,可以将 --mannequin-user MANNEQUIN 替换为 --mannequin-ID ID,将 ID 替换为模型 ID。

      如果你的组织使用 Enterprise Managed Users 并且你想要跳过属性邀请以立即回收模特,请添加 --skip-invitation 自变量。

      Shell
      gh bbs2gh reclaim-mannequin --github-org DESTINATION --mannequin-user MANNEQUIN --target-user USERNAME
      

默认情况下,组织成员会通过电子邮件接收邀请,在成员接受邀请之前,不会回收模型。

在浏览器中回收利用人体模型

  1. 在 GitHub 的右上角,单击个人资料图片,然后单击“ Your organizations”****。

  2. 单击以选择一个组织。

  3. 在组织名称下,单击 “Settings”****。 如果看不到“设置”选项卡,请选择“”下拉菜单,然后单击“设置”********。

    组织配置文件中选项卡的屏幕截图。 “设置”选项卡以深橙色标出。

  4. 在侧边栏的“Access”部分,单击“ Import/Export”****。

  5. 在要回收的模型右侧,单击“重新归属”。

  6. 在搜索字段中,键入要将模型的贡献归属给的组织成员的用户名,然后单击该成员。

    注意

    只能向已是组织成员的用户帐户发送归属邀请。

  7. 单击“ 邀请”。 默认情况下,组织成员会通过电子邮件接收邀请,在成员接受邀请之前,不会回收模型。

查看归属邀请的状态

可以查看您组织的所有归属邀请状态。

  • 已邀请:已向用户发送邀请,但用户尚未回复邀请。
  • 已完成:用户已接受邀请,或是邀请流程被跳过。 用户的贡献已经重新归属。
  • 已拒绝:用户选择不为人体模型的贡献署名。
  1. 在 GitHub 的右上角,单击个人资料图片,然后单击“ Your organizations”****。

  2. 单击以选择一个组织。

  3. 在组织名称下,单击 “Settings”****。 如果看不到“设置”选项卡,请选择“”下拉菜单,然后单击“设置”********。

    组织配置文件中选项卡的屏幕截图。 “设置”选项卡以深橙色标出。

  4. 在侧边栏的“Access”部分,单击“ Import/Export”****。

  5. 在“ 导入/导出”下,单击“归因邀请”。

    存储库“导入/导出”页的屏幕截图。 一个标注为“属性邀请”的选项卡被深橙色的边框标出。

管理 Git 提交作者身份

Git 提交的作者信息与假人无关,也不能通过收回假人将其归属于GitHub 用户。 而是根据用于在 Git 中提交时使用的电子邮件地址,将提交归属于 GitHub 上的用户帐户。

在许多情况下,用户可以通过将用于创作提交的电子邮件地址添加到自己的用户帐户中,从而将提交重新归属于自己。 有关详细信息,请参阅“将电子邮件地址添加到GitHub帐户”。

但是,如果使用 Enterprise Managed Users,则用户无法在其用户帐户 GitHub 中添加电子邮件地址,因此无法重新提交 Git 提交。 只有由身份提供者(IdP)中用户的主要电子邮件地址创作的提交才会归因于托管用户帐户。

此外,由GitHub电子邮件地址提供的noreply创作提交无法重新分配,因为无法将noreply电子邮件地址手动添加到用户帐户。 有关详细信息,请参阅“设置提交电子邮件地址”。