

亚马逊 CodeCatalyst 不再向新买家开放。现有客户可以继续正常使用该服务。有关更多信息，请参阅 [如何从中迁移 CodeCatalyst](migration.md)。

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 如何从中迁移 CodeCatalyst
<a name="migration"></a>

*经过深思熟虑，我们决定从 2025 年 11 月 7 日起关闭新买家访问亚马逊 CodeCatalyst的权限。现有的Amazon CodeCatalyst 客户可以在现有空间中继续使用该服务，但无法创建新的空间。 AWS 继续投资于 Amazon 的安全性和可用性 CodeCatalyst，但我们不打算推出新功能。*

 客户可以手动将其数据从 Amazon 迁移 CodeCatalyst 到其他提供商。本文档介绍从 AWS 和管理控制台迁移、提取或删除数据的基本方法。 CodeCatalyst 通过 CodeCatalyst 控制台在其他 AWS 或第三方服务中创建的资源和数据需要通过这些服务删除，以停止累积费用（如果适用）。

买家可以考虑[使用宣布于 2025 年 4 月 17 日正式上市的 Amazon Q 迁移到 GitLab Duo](https://aws.amazon.com/blogs/devops/announcing-general-availability-of-gitlab-duo-with-amazon-q/)。这项新产品是一款集成产品，将 DevSecOps 平台与Amazon Q [GitLab的](https://about.gitlab.com/)生成人工智能功能融为一体。带有 Amazon Q 的 Gitlab Duo 将 Amazon Q 代理功能直接 GitLab嵌入到 DevSecOps 的平台中，以加快整个软件开发生命周期中复杂的多步骤任务。

## 迁移存储库
<a name="w2aac11b9"></a>

### 将您的 CodeCatalyst 存储库迁移到 GitLab 存储库
<a name="w2aac11b9b3"></a>

将必备的 URL 与 HTTPS Git 存储库凭据结合使用，按照文档中 GitLab关于通过 [URL 从仓库[导入源代码](https://docs.gitlab.com/ee/user/project/import/)的指导进行](https://docs.gitlab.com/ee/user/project/import/repo_by_url.html)操作。

### 将您的 CodeCatalyst 存储库迁移到 GitHub 存储库
<a name="w2aac11b9b5"></a>

将必备的 URL 与 HTTPS Git 存储库凭据结合使用，按照文档中有关[导入源代码 GitHub](https://docs.github.com/en/migrations/importing-source-code/using-github-importer/about-github-importer)的指导进行操作。

### 向其他存储库提供商的通用迁移
<a name="w2aac11b9b7"></a>

1. **克隆 CodeCatalyst 存储库**

   使用 Git 将 Amazon CodeCatalyst 存储库克隆到您的本地计算机。如果您使用的是 HTTPS，则可以通过运行以下命令来执行此操作：

   ```
   git clone --mirror https://your-aws-repository-url your-aws-repository
   ```

   `your-aws-repository-url`替换为您的 Amazon CodeCatalyst 存储库的 URL。

    将 `your-aws-repository` 替换为该存储库的名称。

    示例：

   ```
   git clone https://git-codecatalyst.us-east-2.amazonaws.com/v1/repos/MyDemoRepo my-demo-repo
   ```

1. **设置新的远程存储库指针**

   导航到您克隆的 Amazon CodeCatalyst 存储库的目录。然后，将来自新存储库提供商的存储库 URL 添加为远程存储库：

   ```
   git remote add <provider name> <provider-repository-url>
   ```

   将 `<provider name>` 替换为您选择的提供商名称。（示例：gitlab）

    将 < provider-repository-url > 替换为新的存储库提供商存储库的 URL。

1. **将本地存储库推送到新的远程存储库：**

   这会将所有分支和标签推送到新存储库提供商的存储库。提供商名称必须与步骤 2 中的提供商名称匹配。

   ```
   git push <provider name> --mirror
   ```

   备注：
   + 远程存储库应该为空
   + 远程存储库可能有不允许强制推送的受保护分支，具体取决于提供商。如果出现这种情况，您必须导航到新存储库提供商并禁用分支保护以允许强制推送。

1. **验证迁移**

   推送完成后，请验证所有文件、分支和标签是否已成功迁移到新存储库提供商。为此，您可以在线浏览存储库，也可以将其克隆到其他位置并在本地查看。

1. ****更新遥控器 URLs（可选）****

   如果您计划继续在本地使用迁移后的存储库，则可能需要更新远程 URL，使其指向新提供商的存储库，而不是 Amazon CodeCatalyst。您可以使用下面的命令进行这项操作：

   ```
   git remote set-url origin <provider-repository-url>
   ```

   将 < provider-repository-url > 替换为新的存储库提供商存储库的 URL。

## 从中提取数据 CodeCatalyst
<a name="w2aac11c11"></a>

### 下载构件
<a name="w2aac11c11b3"></a>

您可以下载和检查由您的 Amazon CodeCatalyst 工作流程操作生成的项目。您可以下载两种类型的构件：
+ 源构件 – 包含运行开始时存在的源存储库内容的快照的构件。
+ 工作流构件 – 在工作流配置文件的 Outputs 属性中定义的构件。

下载工作流输出的构件：

1. 打开 CodeCatalyst 控制台，[网址为 https://codecatalyst.aws/](https://codecatalyst.aws/)。

1. 选择您的项目。

1. 在导航窗格中，选择 **CI/CD**，然后选择**工作流**。

1. 选择工作流的名称。您可以按定义工作流的源存储库或分支名称筛选，也可以按工作流名称或状态筛选。

1. 在工作流的名称下，选择**运行**。

1. 在**运行历史记录**的**运行 ID** 列中，选择一个运行。例如，Run-95a4d。

1. 在运行的名称下，选择**构件**。

1. 在构件旁边，选择**下载**。此时会下载存档文件。其文件名由七个随机字符组成。

1. 使用您选择的档案提取实用程序来提取存档。

### 下载事务附件
<a name="w2aac11c11b5"></a>

1. 打开 CodeCatalyst 控制台，[网址为 https://codecatalyst.aws/](https://codecatalyst.aws/)。

1. 选择要管理其附件的事务。要获取有关查找事务的帮助，请参阅[查找和查看事务](https://docs.aws.amazon.com/codecatalyst/latest/userguide/issues-view.html)。

1. 要下载附件，请选择要下载的附件旁边的省略号菜单，然后选择**下载**。

### 下载操作的源代码
<a name="w2aac11c11b7"></a>

1. 打开 CodeCatalyst 控制台，[网址为 https://codecatalyst.aws/](https://codecatalyst.aws/)。

1. 选择您的项目。

1. 找到要查看其代码的操作：

   1. 在导航窗格中，选择 **CI/CD**，然后选择**工作流**。

   1. 选择任意工作流的名称，或创建一个工作流。有关创建工作流的信息，请参阅[创建工作流](https://docs.aws.amazon.com/codecatalyst/latest/userguide/workflows-create-workflow.html)。

   1. 选择**编辑**。

   1. 在左上角，选择 **\$1 操作**打开操作目录。

   1. 在下拉列表中，选择 CodeCatalyst要查看的 **Amazon** CodeCatalyst、 CodeCatalyst Labs 和第三方操作。

   1. 搜索操作，然后选择其名称。请不要选择加号（**\$1**）。

    有关该操作的详细信息将显示。

1. 在靠近底部的操作详细信息对话框中，选择**下载**。

   出现的页面中显示操作源代码所在的 Amazon S3 存储桶。有关 Amazon S3 的信息，请参阅《Amazon Simple Storage Service 用户指南》**中的[什么是 Amazon S3？](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html)

## 从中删除您的数据 CodeCatalyst
<a name="w2aac11c13"></a>

在从中删除数据之前 CodeCatalyst，请告知您的团队有关服务迁移的信息，并确认不需要任何资源。数据和资源一旦删除便无法恢复。

### 请求服务团队代表您删除数据
<a name="w2aac11c13b5"></a>

空间管理员可以通过 CodeCatalyst 控制台中的 Support Center 联系我们，要求服务团队代表他们删除空间。空间管理员必须在 CodeCatalyst 控制台中通过身份验证才能请求删除空间。提交请求后，服务团队将联系您以确认请求，然后再代表您执行操作。

### 删除您的 CodeCatalyst 空间
<a name="w2aac11c13b7"></a>

您可以删除空间以取消对该空间所有资源的访问权限。您必须拥有**空间管理员**角色才能删除空间。

**注意：**删除空间的操作无法撤销，且一旦空间被删除，其中的数据就无法恢复。****

删除空间后，所有空间成员都将无法访问空间资源。空间资源的计费也将停止，第三方源存储库提示的任何工作流都将停止。

如果您属于多个空间，则可以在顶部导航栏中选择空间。

**删除空间**

1. 打开 CodeCatalyst 控制台，[网址为 https://codecatalyst.aws/](https://codecatalyst.aws/)。

1. 导航到您的空间。
**提示**  
如果您属于多个空间，则可以在顶部导航栏中选择一个空间。

1. 选择**设置**，然后选择**删除**。

1. 键入 **delete** 以确认删除。

1. 选择**删除**。
**注意**  
如果您属于多个空间，您将被重定向到空间概述页面。如果您属于一个空间，您将被重定向到空间创建页面。

如果您删除了一个空间但属于多个空间，您将被重定向到空间概述页面。如果您属于一个空间，您将被重定向到空间创建页面。

如果您通过 CodeCatalyst 控制台在其他服务 AWS 或第三方服务中创建了资源，则需要单独访问这些服务以关闭创建这些服务的结算账号中的资源。删除空间只会删除 CodeCatalyst 数据和资源。

### 删除项目
<a name="w2aac11c13b9"></a>

您可以删除项目以移除对该项目的资源的所有访问权限。您必须拥有**空间管理员**或**项目管理员**角色才能删除项目。在删除项目后，项目成员将无法访问项目资源，并且第三方源存储库所触发的任何工作流都将停止。

删除项目：

1. 打开 CodeCatalyst 控制台，[网址为 https://codecatalyst.aws/](https://codecatalyst.aws/)。

1. 导航到具有要查看的项目的空间。在**项目**下，选择您的项目。

1. 在导航窗格中，选择**项目设置**。

1. 选择**删除项目**。

1. 输入 **delete** 以确认删除。

1. 选择**删除项目**。

如果您通过 CodeCatalyst 项目在其他服务 AWS 或第三方服务中创建了资源，则需要单独访问这些服务以关闭创建这些服务的结算账号中的资源。删除空间只会删除 CodeCatalyst 数据和资源。

### 删除源存储库
<a name="w2aac11c13c11"></a>

您可以删除 Amazon CodeCatalyst 项目的源存储库。删除源存储库也会删除存储在存储库中的所有项目信息。如果有任何工作流依赖于源存储库，则在删除该存储库后，这些工作流将从项目工作流列表中删除。引用源存储库的事务不会被删除或更改，但一旦删除源存储库，添加到事务中的任何指向源存储库的链接都将失效。

*重要提示：*****删除源存储库的操作无法撤销。删除源存储库后，就无法再克隆它、从中提取数据或向其推送数据。删除源存储库不会删除该存储库的任何本地副本（本地存储库）。要删除本地存储库，请使用本地计算机的目录和文件管理工具。 ****

*注意：*****您无法在 CodeCatalyst 控制台中删除链接的存储库。要删除链接的存储库，请在存储库列表中选择链接，在托管该存储库的服务中打开该存储库，然后删除它。有关更多信息，请参阅托管链接存储库的服务的文档。 ****

要从项目中移除链接存储库，请参阅中的[取消关联 GitHub 存储库、Bitbucket 存储库、 GitLab 项目存储库和 Jira](https://docs.aws.amazon.com/codecatalyst/latest/userguide/extensions-unlink.html) 项目。 CodeCatalyst

**删除源存储库**

1. 导航到包含要删除的源存储库的项目。

1. 在项目的摘要页面上，从列表中选择所需的存储库，然后选择**查看存储库**。或者，在导航窗格中，选择**代码**，然后选择**源存储库**。从项目的源存储库列表中选择存储库的名称。

1. 在存储库主页上，选择**更多**，选择**管理设置**，然后选择**删除存储库**。

1. 查看分支、拉取请求和相关工作流信息，以确保不会删除仍在使用或有未完成工作的存储库。如果要继续，请键入 **delete**，然后选择**删除**。

### 删除自定义蓝图
<a name="w2aac11c13c13"></a>

当您从 Amazon CodeCatalyst 空间中删除蓝图时，您对该蓝图项目或蓝图版本的资源的所有访问权限都将被移除。在您删除蓝图时，项目成员将无法访问项目资源，并且第三方源存储库所触发的任何工作流都将停止。

如果删除蓝图，不会影响已应用该蓝图的项目。不会从项目中移除蓝图的资源。

*重要提示：*要从空间中删除已发布的自定义蓝图或自定义蓝图的目录版本，您必须使用在空间中具有空间管理员或高级用户角色的账户进行登录。

1. 打开 CodeCatalyst 控制台，[网址为 https://codecatalyst.aws/](https://codecatalyst.aws/)。

1. 在 CodeCatalyst 控制台中，导航到要删除自定义蓝图的空间。

1. 在空间控制面板上，选择**设置**选项卡，然后选择**蓝图**。

1. 在**设置**表中，选择要删除的自定义蓝图的单选按钮，然后选择**删除蓝图**。

1. 输入 `delete` 以确认删除蓝图目录版本。

1. 选择**删除**。

### 删除事务附件
<a name="w2aac11c13c15"></a>

1. 打开 CodeCatalyst 控制台，[网址为 https://codecatalyst.aws/](https://codecatalyst.aws/)。

1. 选择要管理其附件的事务。要获取有关查找事务的帮助，请参阅[查找和查看事务](https://docs.aws.amazon.com/codecatalyst/latest/userguide/issues-view.html)。

1. 要移除附件，请选择要移除的附件旁边的省略号菜单，然后选择**删除**。

### 删除通过 Amazon 访问的开发环境中的文件 CodeCatalyst
<a name="w2aac11c13c17"></a>

您可以在开发环境、本地计算机或集成式开发环境（IDE）中删除文件。您无法在 Amazon CodeCatalyst 控制台中删除文件。

### 删除空间的开发环境
<a name="w2aac11c13c19"></a>

有关删除开发环境的考虑因素的更多信息，请参阅[删除开发环境](https://docs.aws.amazon.com/codecatalyst/latest/userguide/devenvironment-delete.html)。

您必须拥有**空间管理员**角色才能查看此页面并在空间级别管理开发环境。如果您属于多个空间，则可以在顶部导航栏中选择一个空间。

**删除开发环境**

1. 打开 CodeCatalyst 控制台，[网址为 https://codecatalyst.aws/](https://codecatalyst.aws/)。

1. 导航到您的 CodeCatalyst 空间

1. 选择**设置**，然后选择**开发环境**。

1. 选择要管理的开发环境旁边的选择器。选择**删除**。

1. 输入 **delete** 以确认删除开发环境。

1. 选择**删除**。

### 删除账户连接
<a name="w2aac11c13c21"></a>

您可以在 CodeCatalyst 控制台中删除之前添加到空间中的账户连接。删除一个账户连接后，您就无法重新建立该连接，必须建立新的连接。

必须为您的 CodeCatalyst 空间指定一个账单账户，即使空间的使用量不会超过免费套餐。您需要先为您的空间添加另一个账户，之后才能为用作指定计费账户的账户移除空间。如果您想删除该空间的计费账户，则需要删除您的空间。请参阅《Amazon CodeCatalyst 管理员指南》中的[管理账单](https://docs.aws.amazon.com/codecatalyst/latest/adminguide/managing-billing.html)。

要管理空间的账户连接，您必须具有**空间管理员**或**高级用户**角色。

稍后可以重新添加已移除的账户，但您必须在账户和空间之间创建新的连接。您需要将所有 IAM 角色重新关联到该账户。

**删除账户连接**

1. 打开 CodeCatalyst 控制台，[网址为 https://codecatalyst.aws/](https://codecatalyst.aws/)。

1. 导航到您的 CodeCatalyst 空间。选择**设置**，然后选择 **AWS 账户**。

1. 在 **Amazon CodeCatalyst 显示名称**下，选择要删除的账户关联旁边的选择器。

1. 选择**移除 AWS 账户**。在字段中输入名称来确认删除，然后选择**移除**。

   这将显示成功横幅，表明已从连接列表中移除账户连接。

### 从 AWS 管理控制台的 CodeCatalyst 空间中移除帐户
<a name="w2aac11c13c23"></a>

您可以使用 CodeCatalyst 中的页面 AWS 来移除已添加到空间的帐户。在此过程中，使用您管理的特定账户的管理权限，登录 AWS 管理控制台中的 Amazon CodeCatalyst Spaces 页面，将 AWS 账户从您的空间中移除。要移除作为您 CodeCatalyst 房源指定结算账户的账户，请务必先指定一个新的结算账号。

稍后可以重新添加已移除的账户，但您必须在账户和空间之间创建新的连接。您将需要将所有 IAM 角色重新关联到已添加的账户。

必须为您的 CodeCatalyst 空间指定一个账单账户，即使空间的使用量不会超过免费套餐。您需要先为您的空间添加另一个账户，之后才能为用作指定计费账户的账户移除空间。

您必须具有**空间管理员**或**高级用户**角色才能管理空间的账户连接。

**删除已添加的账户**

1. 在中 AWS 管理控制台，请确保您使用要管理的相同帐户登录。

1. 打开 CodeCatalyst 控制台，[网址为 https://codecatalyst.aws/](https://codecatalyst.aws/)。

1. 导航到您的 CodeCatalyst 空间。选择**设置**，然后选择**账单**。

1. 在页面上查看计费账户信息，确保要删除的账户不是该空间的指定计费账户。

1. 在中选择 “**管理账单” AWS**。这将在中打开 Amazon CodeCatalyst 空间 AWS 管理控制台。如果系统提示您登录，请登录 AWS，然后再次选择该按钮加载页面。

1. 在 **Amazon CodeCatalyst Spaces** 页面上，选择包含您要删除的账户的空间。此时将显示空间的详细信息页面。

1. 选择**删除空间**。

1. 在 “**删除此帐户的 CodeCatalyst 空间**” 中，输入空间名称进行确认。选择**移除 **。

### 删除密钥
<a name="w2aac11c13c25"></a>

使用以下步骤来删除密钥和密钥引用标识符。在删除密钥之前，我们建议您从所有工作流操作中移除该密钥的引用标识符。如果您删除密钥而不删除引用标识符，则该操作在下次运行时将失败。

**从工作流中删除密钥的引用标识符**

1. 打开 CodeCatalyst 控制台，[网址为 https://codecatalyst.aws/](https://codecatalyst.aws/)。

1. 在导航窗格中，选择 **CI/CD**，然后选择**工作流**。

1. 选择工作流的名称。您可以按定义工作流的源存储库或分支名称筛选，也可以按工作流名称或状态筛选。

1. 选择**编辑**。

1. 选择 **YAML**。

1. 在工作流中搜索以下字符串：

   ```
   ${Secrets.
   ```

   这将找到所有密钥的所有引用标识符。

1. 删除所选密钥的参考标识符，或将其替换为纯文本值。

1. （可选）选择**验证**，在提交之前验证工作流的 YAML 代码。

1. 选择**提交**，输入提交消息，然后再次选择**提交**。

**删除密钥**

1. 打开 CodeCatalyst 控制台，[网址为 https://codecatalyst.aws/](https://codecatalyst.aws/)。

1. 在导航窗格中，选择 **CI/CD**，然后选择**密钥**。

1. 在密钥列表中，选择要删除的密钥。

1. 选择**删除**。

1. 输入 **delete** 以确认删除。

1. 选择**删除**。

### 删除团队
<a name="w2aac11c13c27"></a>

您可以删除不再需要的团队。在删除团队时，将从空间中的所有项目和资源中移除所有团队成员的关联权限。您必须拥有**空间管理员**角色才能管理团队。

**删除团队**

1. 打开 CodeCatalyst 控制台，[网址为 https://codecatalyst.aws/](https://codecatalyst.aws/)。

1. 导航到您的空间。选择**设置**，然后选择**团队**。

1. 在**操作**中，选择**删除团队**。这将更改整个团队的角色。

1. 选择**删除**。

### 删除预置的实例集
<a name="w2aac11c13c29"></a>

按照以下说明操作来删除预置的实例集。

在删除某个预调配实例集之前，请从操作的 YAML 代码中删除 Fleet 属性，以从所有操作中删除该实例集。任何在删除预置实例集后继续引用该实例集的操作都将在下次运行时失败。

**删除预置的实例集**

1. 在导航窗格中，选择 **CI/CD**，然后选择**计算**。

1. 在**预置实例集**列表中，选择要删除的实例集。

1. 选择**删除**。

1. 输入 **delete** 以确认删除。

1. 选择**删除**。

### 删除程序包存储库
<a name="w2aac11c13c31"></a>

要在中删除软件包存储库，请执行以下步骤 CodeCatalyst。

**删除程序包存储库**

1. 打开 CodeCatalyst 控制台，[网址为 https://codecatalyst.aws/](https://codecatalyst.aws/)。

1. 导航到包含要删除的程序包存储库的项目。

1. 在导航窗格中，选择**程序包**。

1. 在**程序包存储库**页面上，选择要删除的存储库。

1. 选择**删除**。

1. 查看提供的有关删除程序包存储库的效果的信息。

1. 在输入框中输入 `delete`，然后选择**删除**。

您的空间被删除后，存储在 Amazon CodeCatalyst 中的所有其他资源都将被删除。这不包括通过 CodeCatalyst 控制台在其他服务 AWS 或 3P 服务中创建的资源和数据。在 CodeCatalyst 控制台之外的服务中创建的所有资源都需要通过这些服务删除，才能停止累积费用。

如果您还有其他问题，请通过 aws-codecatalyst-service @amazon .com 联系我们，或通过亚马逊 CodeCatalyst 控制台中的支持中心联系我们。