

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

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

# 使用项目来组织工作 CodeCatalyst
<a name="projects"></a>

您可以使用 Amazon 中的项目 CodeCatalyst 来建立协作空间，开发团队可以在其中使用共享持续 integration/continuous 交付 (CI/CD) 工作流程和存储库执行开发任务。创建项目时，您可以添加、更新或移除资源。您还可以监控团队的工作进度。一个空间内可以有多个项目。

中的空间 CodeCatalyst 由项目组成。您可以查看空间中的每个项目，但只能使用您作为其成员的项目。创建项目时，将生成项目的默认角色，您可将这些角色分配给您邀请加入项目的用户。
+ 分配给项目且具有项目角色（例如**贡献者角色**）的任何人员都能访问项目资源，例如源存储库。
+ 任何具有**空间管理员**或**项目管理员**角色的人员都可以发送项目加入邀请。
+ 具有**项目管理员**角色的用户可以跟踪共享资源中的活动、状态和其他设置。
+ 具有**受限访问权限**角色的用户可以管理作为 CI/CD 工作流程一部分的功能、代码修复和测试的项目分配。

  工作流用于根据您要设置的活动和输出来构建、测试和发布或更新应用程序，将其作为CI/CD pipeline. You can assemble workflows by adding actions that transfer and work on your source artifacts. When you run actions, your project cloud resources are used to provide on-demand compute ability for your workflow actions. You might configure more CI/CD工作流程。例如，您可以创建一个仅用于构建和测试操作的工作流，在修复错误时，无需部署即可查看测试结果并完成工作流。之后，您可以创建另一个工作流来构建应用程序并将其部署到暂存环境。

创建项目时，您可以使用蓝图创建包含示例代码并创建资源的项目，也可以从空项目开始操作。如果您使用蓝图创建项目，则您选择的蓝图将决定将哪些资源添加到您的项目中，以及用于 CodeCatalyst 创建或配置哪些工具，以便您可以跟踪和使用项目资源。创建项目后，可以手动添加或移除资源。

每个项目都将项目活动作为按用户划分的事件列表进行跟踪，例如在创建项目或修改资源时。将在空间级别监控和汇总项目活动。有关使用活动数据的更多信息，请参阅[查看空间中的所有项目](projects-view-overview.md)。

如果您的项目使用 AWS 资源，则可以将您的 CodeCatalyst 账户关联到一个拥有管理权限的 AWS 账户，以便为项目整合资源。

创建项目后，可以将源存储库、事务和其他资源添加到项目中。您必须具有**空间管理员**角色才能创建项目。

# 创建项目
<a name="projects-create"></a>

通过 CodeCatalyst 项目，您可以使用共享持续 integration/continuous 交付 (CI/CD) 工作流程和存储库执行开发任务、管理资源、跟踪问题和添加用户。

在创建项目之前，您必须具有**空间管理员**或**高级用户**角色。

**Topics**
+ [在 Amazon 中创建一个空项目 CodeCatalyst](#projects-create-empty)
+ [使用链接的第三方存储库创建项目](#projects-create-3p-repo)
+ [使用蓝图创建项目](#projects-create-console-template)
+ [使用 Amazon Q 通过蓝图创建项目或添加功能时的最佳实践](#projects-create-amazon-q)
+ [将蓝图与项目结合使用的最佳实践](#projects-create-use-blueprints)
+ [向已创建的项目添加资源和任务](#projects-create-after-steps)

## 在 Amazon 中创建一个空项目 CodeCatalyst
<a name="projects-create-empty"></a>

您可以创建没有资源的空项目，并在稍后手动添加所需的资源。

在创建项目之前，您必须具有**空间管理员**或**高级用户**角色。

**创建空项目**

1. 导航到要在其中创建项目的空间。

1. 在空间控制面板上，选择**创建项目**。

1. 选择**从头开始**。

1. 在**为项目命名**下，输入要分配给项目的名称。该名称在空间内必须是唯一的。

1. 选择**创建项目**。

## 使用链接的第三方存储库创建项目
<a name="projects-create-3p-repo"></a>

您可以将项目的源代码保存在首选的第三方提供商中，但仍可使用蓝图、生命周期管理、工作流程等所有 CodeCatalyst 功能。为此，您可以创建一个链接到 GitHub 存储库、Bitbucket 存储库或 CodeCatalyst 项目存储库的新 GitLab 项目。然后，您可以在 CodeCatalyst 项目中使用您的链接源代码库。

在创建 CodeCatalyst 项目之前，您必须拥有 **Space 管理员**或 **Power 用户**角色。有关更多信息，请参阅[创建空间](spaces-create.md)和[直接邀请用户进入空间](spaces-members-add-admin.md)。

要在链接到您 GitHub 账户中的 CodeCatalyst 源存储库的项目中创建项目，您需要完成以下三个任务：

1. 安装**GitHub 存储库**、**Bitbucket 存储库**或**GitLab 存储库**扩展。在外部站点中，系统会提示您连接并 CodeCatalyst 提供对存储库的访问权限，这将在下一步中完成。
**重要**  
要将**GitHub 存储库**、**Bitbuck** et **GitLab 存储库或存储库**扩展安装到您的 CodeCatalyst 空间，您必须使用在该空间中具有**空间管理员**角色的账户登录。

1. 将您的 GitHub 账户、Bitbucket 工作空间或 GitLab 用户连接到。 CodeCatalyst
**重要**  
要将您的 GitHub 账户、Bitbucket 工作 CodeCatalyst 空间、 GitLab 用户连接到您的空间，您必须同时是第三方来源的管理员和 CodeCatalyst **空间管理员**。
**重要**  
安装存储库扩展后，您链接到的任何存储库都 CodeCatalyst 将对其代码进行索引和存储。 CodeCatalyst这将使代码可在中 CodeCatalyst搜索。要更好地了解在中使用链接存储库时代码的数据保护 CodeCatalyst，请参阅 *Amazon CodeCatalyst 用户指南*中的[数据保护](https://docs.aws.amazon.com/codecatalyst/latest/userguide/data-protection.html)。

1. 创建 CodeCatalyst 链接到您的 GitHub 存储库、Bitbucket 存储库或 GitLab 项目存储库的项目。
**重要**  
虽然您可以作为**贡献者**链接 GitHub 存储库、Bitbucket 存储库或 GitLab 项目仓库，但您只能以 **Space 管理员或**项目**管理员**的身份取消第三方仓库的链接。有关更多信息，请参阅 [取消关联 GitHub 存储库、Bitbucket 存储库、 GitLab 项目存储库和 Jira 项目 CodeCatalyst](extensions-unlink.md)。
**重要**  
CodeCatalyst 不支持检测链接仓库的默认分支中的更改。要更改链接存储库的默认分支，必须先取消其与该分支的链接 CodeCatalyst，更改默认分支，然后再次进行链接。有关更多信息，请参阅 [在中关联 GitHub 存储库、Bitbucket 存储库、 GitLab 项目存储库和 Jira 项目 CodeCatalyst](extensions-link.md)。  
作为最佳实践，在链接存储库之前，请始终确保您拥有最新版本的扩展。
**注意**  
 GitHub 存储库、Bitbucket 存储库或 GitLab 项目存储库只能链接到空间中的一个 CodeCatalyst 项目。
您不能将空仓库或已存档 GitHub 存储库、Bitbucket 存储库或 GitLab 项目存储库与 CodeCatalyst 项目一起使用。
您不能链接与 GitLab 项目中 GitHub 仓库同名的存储库、Bitbucket 存储库或 CodeCatalyst 项目存储库。
**GitHub 存储库**扩展与 GitHub 企业服务器存储库不兼容。
**Bitbucket 存储库**扩展与 Bitbucket Data Center 存储库不兼容。
**GitLab 存储库**扩展与 GitLab 自行管理的项目存储库不兼容。
您无法在已链接存储库中使用**为我编写描述**或**汇总评论**功能。这些功能仅在中的拉取请求中可用 CodeCatalyst。

有关更多信息，请参阅 [为带有扩展程序的项目添加功能 CodeCatalyst使用扩展向项目添加功能](extensions.md)。

**安装第三方扩展**

1. 导航到要在其中创建项目的空间。

1. 在空间控制面板上，选择**创建项目**。

1. 选择**自带代码**。

1. **在 “**链接现有存储库**” 下，根据要使用的第三方**存储库提供商选择GitHub **GitLab 存储库**、Bitbu** cket 存储库和存储库。**如果您之前没有关联您的 GitHub 账户、Bitbucket 工作空间或 GitLab 账户，则系统会提示您进行关联。如果您选择的第三方扩展尚未安装，系统会显示安装提示。

1. 如果出现提示，请选择**安装**。查看扩展所需的权限，如果要继续，请再次选择**安装**。

安装第三方扩展程序后，下一步是将您的 GitHub 账户、Bitbucket 工作空间或 GitLab 用户连接到您的 CodeCatalyst 空间。

**将您的 GitHub 账户、Bitbucket 工作空间或 GitLab 用户连接到 CodeCatalyst**

根据您选择配置的第三方扩展执行下列操作之一：
+ **GitHub 存储库**：Connect 连接到 GitHub 帐户。

  1. 选择 **Connect GitHub 帐户**以访问外部站点 GitHub。

  1. 使用您的 GitHub 凭证登录您的 GitHub 账户，然后选择要安装Amazon的账户 CodeCatalyst。
**提示**  
如果您之前已将 GitHub 账户关联到该空间，则系统不会提示您重新授权。相反，如果您是多个空间的成员或合作者，则会看到一个对话框，询问您要在哪里安装扩展程序；如果您只属于一个 GitHub 空间，则会看到Amazon CodeCatalyst 应用程序的配置页面。 GitHub 为要允许的存储库访问权限配置应用程序，然后选择**保存**。如果**保存**按钮未激活，请更改配置，然后重试。

  1. 选择是 CodeCatalyst 允许访问所有当前和将来的存储库，还是选择要在中使用的特定 GitHub 存储库 CodeCatalyst。默认选项是将 GitHub 账户中的所有 GitHub 存储库包括在内，包括将由访问的 future 存储库 CodeCatalyst。

  1. 查看授予的权限 CodeCatalyst，然后选择 “**安装**”。

  将您的 GitHub 账户关联到后 CodeCatalyst，系统会将您带到**GitHub 存储库**扩展详情页面，您可以在其中查看和管理关联的 GitHub 账户和关联的 GitHub 存储库。
+ **Bitbucket 存储库**：连接到 Bitbucket 工作区。

  1. 选择**连接 Bitbucket 工作区**以转到 Bitbucket 的外部站点。

  1. 使用您的 Bitbucket 凭据登录您的 Bitbucket 工作空间并查看授予的权限。 CodeCatalyst

  1. 从 “**授权工作空间**” 下拉菜单中，选择要提供 CodeCatalyst 访问权限的 Bitbucket 工作空间，然后选择 “**授予访问权限**”。
**提示**  
如果您之前已将 Bitbucket 工作区连接到空间，则系统不会提示您重新授权。相反，如果您是多个 Bitbucket 工作空间的成员或合作者，则会看到一个对话框，询问您要在哪里安装扩展程序；如果您只属于一个 Bitbucket 工作空间，则会看到亚马逊 CodeCatalyst 应用程序的配置页面。为要允许的工作区访问权限配置应用程序，然后选择**授予访问权限**。如果**授予访问权限**按钮未激活，请更改配置，然后重试。

  将 Bitbucket 工作空间连接到后 CodeCatalyst，您将被带到 **Bitbucket 存储库**扩展详细信息页面，您可以在其中查看和管理已连接的 Bitbucket 工作空间和关联的 Bitbucket 存储库。
+ **GitLab 存储库**：Connect 连接到 GitLab 用户。

  1. 选择 **Connect GitLab 用户**以访问外部站点 GitLab。

  1. 使用您的 GitLab 证书登录您的 GitLab 用户并查看授予的权限 CodeCatalyst。
**提示**  
如果您之前已将 GitLab 用户连接到空间，则系统不会提示您重新授权。相反，您将被导航回 CodeCatalyst 控制台。

  1. 选择 “**为 AWS 连接器授权” GitLab**。

  将 GitLab 用户连接到后 CodeCatalyst，系统会将您带到**GitLab 存储库**扩展详细信息页面，您可以在其中查看和管理关联的 GitLab 用户和关联的 GitLab 项目存储库。

将第三方来源连接到后 CodeCatalyst，您可以将第三方存储库链接到您的 CodeCatalyst 项目。

**创建您的项目**

1. 在**创建项目**页面上，选择您关联的 GitHub 账户。

1. **根据您连接的第三方存储库提供商，选择**GitHub 存储库**、**Bitbuck** et 存储库或GitLab 存储库存储库下拉菜单以查看第三方存储库，然后选择要链接到项目的存储库。**

1. 在**命名项目**文本输入字段中，输入要分配给项目的名称。该名称在空间内必须是唯一的。

1. 选择**创建项目**。

安装**GitHub 存储库**、**Bitbuck** et **GitLab 存储库或存储库**扩展、连接资源提供商并将第三方存储库与 CodeCatalyst 项目关联后，您可以在 CodeCatalyst 工作流程和开发环境中使用它。您还可以在关联的 GitHub 账户、Bitbucket 工作区或 GitLab 使用蓝图生成的代码的用户中创建第三方存储库。您还可以将已链接存储库与 Amazon Q 开发者版、蓝图等结合使用。有关更多信息，请参阅[在第三方存储库事件发生后自动启动工作流运行](extensions-workflow-repositories.md)和[创建开发环境](devenvironment-create.md)。

## 使用蓝图创建项目
<a name="projects-create-console-template"></a>

您可以使用项目蓝图预置所有项目资源和示例代码。有关蓝图的信息，请参阅[使用 CodeCatalyst 蓝图创建综合项目使用蓝图创建综合项目](project-blueprints.md)。

**使用蓝图创建项目**

1. 在 CodeCatalyst 控制台中，导航到要在其中创建项目的空间。

1. 在空间控制面板上，选择**创建项目**。

1. 选择**从蓝图开始**。
**提示**  
您可以选择向 **Amazon Q** 提供您的项目需求，让 Amazon Q 为您推荐蓝图，以此来添加蓝图。有关更多信息，请参阅[创建项目或添加功能时使用 Amazon Q 选择蓝图](getting-started-project-assistance.md#getting-started-project-assistance-create-apply-bp)和[使用 Amazon Q 通过蓝图创建项目或添加功能时的最佳实践](#projects-create-amazon-q)。此功能仅在美国西部（俄勒冈州）区域中提供。  
此功能要求为空间启用生成式人工智能功能。有关更多信息，请参阅 [Managing generative AI features](https://docs.aws.amazon.com/codecatalyst/latest/adminguide/managing-generative-ai-features.html)。

1. **在**CodeCatalyst 蓝图**或**空间蓝**图选项卡中，选择蓝图，然后选择下一步。**

1. 在**命名项目**下，输入要分配给项目的名称及其关联资源名称。该名称在空间内必须是唯一的。

1. （可选）默认情况下，蓝图创建的源代码存储在存储 CodeCatalyst 库中。此外，您可以选择将蓝图源代码存储在第三方存储库中。有关更多信息，请参阅 [为带有扩展程序的项目添加功能 CodeCatalyst使用扩展向项目添加功能](extensions.md)。
**重要**  
CodeCatalyst 不支持检测链接仓库的默认分支中的更改。要更改链接存储库的默认分支，必须先取消其与该分支的链接 CodeCatalyst，更改默认分支，然后再次进行链接。有关更多信息，请参阅 [在中关联 GitHub 存储库、Bitbucket 存储库、 GitLab 项目存储库和 Jira 项目 CodeCatalyst](extensions-link.md)。  
作为最佳实践，在链接存储库之前，请始终确保您拥有最新版本的扩展。

   根据要使用的第三方存储库提供商，执行以下操作之一：
   + **GitHub 存储库**：Connect GitHub 账户。

     选择 “**高级**” 下拉菜单，选择 GitHub作为存储库提供者，然后选择要存储蓝图创建的源代码的 GitHub 帐户。
**注意**  
如果您要关联 GitHub 账户，则必须创建个人连接才能在您的身份和身份之间建立 CodeCatalyst 身份映射。 GitHub 有关更多信息，请参阅[个人连接](concepts.md#personal-connection-concept)和[通过人际关系访问 GitHub 资源](ipa-settings-connections.md)。
   + **Bitbucket 存储库**：连接 Bitbucket 工作区。

     选择**高级**下拉菜单，选择 Bitbucket 作为存储库提供商，然后选择用于存储蓝图所创建的源代码的 Bitbucket 工作区。
   + **GitLab 存储库**：Connect GitLab 用户。

     选择 “**高级**” 下拉菜单，选择 GitLab作为存储库提供者，然后选择要存储蓝图创建的源代码的 GitLab 用户。

1. 在**项目资源**下，配置蓝图参数。根据蓝图的不同，您可以选择命名源存储库名称。

1. （可选）要根据您选择的项目参数查看包含更新的定义文件，请从**生成项目预览**中选择**查看代码**或**查看工作流**。

1. （可选）从蓝图卡中选择**查看详细信息**，查看蓝图的具体详细信息，如蓝图架构概述、所需连接和权限，以及蓝图创建的资源种类。

1. 选择**创建项目**。

## 使用 Amazon Q 通过蓝图创建项目或添加功能时的最佳实践
<a name="projects-create-amazon-q"></a>

当您创建项目或想要向现有项目添加新组件时，您可能不确定要使用哪个蓝图或如何集成功能。 CodeCatalyst 包括与名为 Amazon Q 的生成式 AI 助手的集成，该助手可以分析您的项目需求并提出最适合您需求的蓝图。

您可以使用 Amazon Q 来帮助您创建带蓝图的项目，该蓝图可以根据您的要求创建组件，或者您可以使用 Amazon Q 来帮助您将蓝图添加到现有项目中。例如，要将适用于 Web 应用程序或现代应用程序的资源添加到项目，请指定您的要求，之后这些资源将与建议的蓝图一起添加。可以为您创建其余组件的事务。

Amazon Q 还会针对建议的蓝图无法满足的要求创建事务。此外，您可以将这些事务分配给 Amazon Q。如果您将事务分配给 Amazon Q，它将尝试创建解决方案草稿以供您评估。这有助于您和您的团队专注于并优化处理需要关注的事务，而 Amazon Q 则专注于解决您没有资源来立即解决的问题。

**注意**  
**由 Amazon Bedrock** 提供支持： AWS 实现[自动滥用检测](https://docs.aws.amazon.com//bedrock/latest/userguide/abuse-detection.html)。由于**为我编写描述**、**创建内容摘要**、**推荐任务**、**使用 Amazon Q 创建功能或将功添加到项目**以及**将事务分配给 Amazon Q** 功能与用于软件开发的 Amazon Q 开发者版代理程序的功能都是基于 Amazon Bedrock 构建的，因此，用户可以充分利用 Amazon Bedrock 中实施的控制措施来强制实施安全性并负责任地使用人工智能（AI）。

以下是一些最佳实践，可帮助您使用 Amazon Q 创建项目和添加蓝图。

**重要**  
生成式人工智能功能仅在美国西部（俄勒冈州）区域中可用。
+ **使用 Amazon Q 提供的默认提示**。Amazon Q 非常适合根据提供的提示选择蓝图。
+ **使用 Amazon Q 建议的配置选项来预览蓝图**。选择一个蓝图以预览该蓝图将创建的示例代码和资源。
+ **使用为 Amazon Q 启用的空间**。要使用 Amazon Q 创建项目，或使用 Amazon Q 向带蓝图的项目添加功能，请使用为生成式人工智能功能启用的空间。有关更多信息，请参阅 [Enabling or disabling generative AI features for a space](https://docs.aws.amazon.com/codecatalyst/latest/adminguide/managing-generative-ai-features.html#managing-generative-ai-features-enable-disable)。
+ **获取有关 Amazon Q 建议的蓝图的更多信息**。您可能需要详细了解使用建议的特定蓝图创建的项目资源、示例代码和组件的类型。有关中可用蓝图的更多信息 CodeCatalyst，请参阅[使用 CodeCatalyst 蓝图创建综合项目使用蓝图创建综合项目](project-blueprints.md)。
+ **允许 Amazon Q 处理事务**。允许 Amazon Q 为您创建事务、分配这些事务并对其进行跟踪。有关更多信息，请参阅 [教程：使用 CodeCatalyst 生成式 AI 功能加快开发工作](getting-started-project-assistance.md)。
+ **取消向 Amazon Q 分配不再处理的事务**。完成示例后，取消向 Amazon Q 分配不再处理的任何事务。如果 Amazon Q 已完成对某个事务的处理或找不到解决方案，请务必取消分配 Amazon Q，以免达到生成式人工智能功能的最大配额。有关更多信息，请参阅 [Managing generative AI features](https://docs.aws.amazon.com/codecatalyst/latest/adminguide/managing-generative-ai-features.html) 和 [Pricing](https://codecatalyst.aws/explore/pricing)。
+ **查看 Amazon Q 的使用情况**。您可以在用户级别查看生成式人工智能功能的使用情况。转到**我的设置**以管理生成式人工智能配额，并按您的构建者 ID 或单点登录（SSO）身份查看使用情况。有关更多信息，请参阅 [Viewing usage of generative AI features in a space](https://docs.aws.amazon.com/codecatalyst/latest/adminguide/managing-generative-ai-features.html#managing-generative-ai-features-view-usage)。

**重要**  
中的生成式 AI 功能 CodeCatalyst 受配额限制。有关更多信息，请参阅 [Amazon Q 开发者版定价](https://aws.amazon.com/q/developer/pricing/)、[Enabling or disabling generative AI features for a space](https://docs.aws.amazon.com/codecatalyst/latest/adminguide/managing-generative-ai-features.html#managing-generative-ai-features-enable-disable) 和 [ Billing](https://docs.aws.amazon.com/codecatalyst/latest/adminguide/managing-billing.html)。

## 将蓝图与项目结合使用的最佳实践
<a name="projects-create-use-blueprints"></a>

以下是一些最佳实践，可帮助您使用蓝图创建项目或添加蓝图。
+ **使用提供的 CodeCatalyst 蓝图创建项目或将其添加到项目**中。您可以使用蓝图为开发人员创建包含源代码和资源的完整项目。例如，Web 应用程序蓝图创建应用程序和基础设施资源并部署 Web 应用程序。您可以使用蓝图创建项目，或将自定义蓝图添加到现有项目中。有关更多信息，请参阅 [使用蓝图创建项目](create-project-with-bp.md)。在中 CodeCatalyst 查看任何蓝图，预览蓝图将创建的示例代码和资源。
+ **使用您的组织设计的自定义蓝图**。您可以使用自定义蓝图在空间中创建完整项目。您的组织设计的自定义蓝图可以提供标准化和最佳实践，这也有助于减少设置新项目所需的工作量。作为自定义蓝图作者，您可以详细了解哪些项目正在空间中使用您的蓝图。利用生命周期管理功能，您可以集中管理每个项目的软件开发生命周期，并且蓝图用户可以利用生命周期管理功能从蓝图的更新选项或版本中重新生成代码库。有关更多信息，请参阅 [以蓝图作者的身份使用生命周期管理功能](lifecycle-management-dev.md)。
+ **将开发人员角色或相应的 IAM 角色添加到您项目的账户**。在完成项目创建步骤期间或之后，您可以通过在已连接到空间的 AWS 账户 中选择或创建 IAM 角色来配置蓝图权限。

## 向已创建的项目添加资源和任务
<a name="projects-create-after-steps"></a>

在项目准备就绪后，您可以添加资源和任务。
+ 要了解使用您的项目创建 CI/CD 的工作流程，请参阅[入门工作流](workflows-getting-started.md)。
+ 要使用与新项目中的构建操作（这些操作将构建构件部署到 Amazon S3 存储桶），请参阅[使用工作流进行构建](build-workflow-actions.md)和[教程：将构件上传到 Amazon S3](build-deploy.md)。
+ 要从一个空项目开始，然后使用 CloudFormation 堆栈部署来部署类似的无服务器应用程序，请参阅[教程：部署无服务器应用程序](deploy-tut-lambda.md)。
+ 要添加事务规划面板，请参阅[跟踪和组织处理问题的工作 CodeCatalyst跟踪和整理有关事务的工作](issues.md)。
+ 要查看项目概述、项目状态、最近的团队活动和分配的工作，请参阅[获取项目列表](projects-view.md)。
+ 要查看源代码或创建拉取请求，请参阅[使用源存储库存储代码并协作处理代码 CodeCatalyst使用源存储库存储代码并进行协作](source.md)。
+ 要设置发送工作流运行成功或失败的状态提醒的通知，请参阅[从 CodeCatalyst 发送 Slack 和电子邮件通知](notifications-manage.md)。
+ 要邀请成员加入您的项目，请参阅[向用户授予项目权限](projects-members.md)。
+ 要设置开发环境，请参阅[使用开发环境编写和修改代码 CodeCatalyst使用开发环境编写和修改代码](devenvironment.md)。

# 获取项目列表
<a name="projects-view"></a>

在您的 CodeCatalyst 空间中，您可以查看您拥有项目权限的每个项目的详细信息。

要查看一个项目，您必须是该项目的成员，或者拥有空间的**空间管理员**角色。

如果您尚未创建项目，请参阅[创建项目](projects-create.md)。您必须具有要在其中创建项目的空间的**空间管理员**角色。
+ 在项目概述中，您可以查看项目成员、源存储库、工作流运行、打开拉取请求、项目开发环境和事务。
+ 在项目设置下，您可以查看和管理项目详细信息、删除项目、邀请新成员加入项目、管理项目成员以及配置通知。

## 查看项目任务和开发环境
<a name="projects-view-overview-tasks"></a>

要查看项目任务（例如分配给您或由您创建的未解决事务和拉取请求，以及项目的关联开发环境）的摘要，请使用控制台。

要查看一个项目，您必须是该项目的成员，或者拥有空间的**空间管理员**角色。

**查看您的源存储库、工作流运行、事务、拉取请求和开发环境**

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

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

1. 在导航窗格中，选择**概述**。

1. 查看分配给您以及由您创建的项目任务。
   + 查看**成员 \$1 查看全部**列表以查看项目成员列表。
   + 查看**存储库**卡以查看与项目关联的源存储库。
   + 查看**工作流运行**卡以查看与项目关联的工作流。
   + 查看**打开拉取请求**卡以查看代码存储库状态摘要，以及分配给您和由您创建的拉取请求。
   + 查看**我的开发环境**卡以查看与项目关联的开发环境的摘要。
   + 查看**事务**卡以查看已分配的任务或您创建的任务的摘要。

# 查看空间中的所有项目
<a name="projects-view-overview"></a>

在空间的**项目**列表中，您可以查看您拥有权限的所有项目。

要查看项目任务（例如分配给您或由您创建的未解决事务和拉取请求，以及项目的关联开发环境）的摘要，请使用控制台。

要查看一个项目，您必须是该项目的成员，或者拥有空间的**空间管理员**角色。

**查看您的源存储库、工作流运行、事务、拉取请求和开发环境**

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

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

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

1. 查看项目名称、路径、项目 ID 和描述。

## 查看项目设置
<a name="projects-view-settings"></a>

在**项目设置**中，您可以查看项目成员、源存储库、工作流运行、打开拉取请求、项目开发环境和事务。

要查看项目任务（例如分配给您或由您创建的未解决事务和拉取请求，以及项目的关联开发环境）的摘要，请使用控制台。

**查看您的源存储库、工作流运行、事务、拉取请求和开发环境**

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

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

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

1. 查看项目名称、路径、项目 ID 和描述。

## 在中更改为其他项目 CodeCatalyst
<a name="projects-view-switch"></a>

要更改为其他项目，请使用控制台从您有权访问的项目的列表中进行选择。

**更改为其他项目**

1. 在 CodeCatalyst 控制台中，选择顶部的项目选择器。

1. 展开下拉列表，然后选择要导航到的项目。

# 删除项目
<a name="projects-delete"></a>

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

**删除项目**

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

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

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

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

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

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

# 向用户授予项目权限
<a name="projects-members"></a>

您可以使用 Amazon CodeCatalyst 控制台管理项目中的成员。您可以添加或移除用户、管理当前成员的角色、发送项目加入邀请以及取消尚未接受的邀请。

在空间和项目用户的成员页面上，用户可以拥有多个角色。拥有多个角色的用户在拥有多个角色时将显示一个指示器，并且首先会显示其中权限最多的角色。

## 获取成员及其项目角色的列表
<a name="projects-members-view"></a>

在向项目添加用户时，您可以分配一个角色来授予项目权限，如下所示：
+ **项目管理员**角色拥有项目中的所有权限。仅将此角色分配给需要管理项目的各个方面（包括编辑项目设置、管理项目权限和删除项目）的用户。有关更多信息，请参阅 [项目管理员角色](ipa-role-types.md#ipa-role-project-admin)。
+ **贡献者**角色拥有在项目中工作所需的权限。将此角色分配给那些需要在项目中处理代码、工作流、事务和操作的用户。有关更多信息，请参阅 [贡献者角色](ipa-role-types.md#ipa-role-contributor)。
+ **审阅者**角色拥有审阅权限。有关更多信息，请参阅 [审阅者角色](ipa-role-types.md#ipa-role-reviewer)。
+ **只读**角色拥有读取权限。有关更多信息，请参阅 [只读角色](ipa-role-types.md#ipa-role-read-only)。

您无需邀请具有**空间管理员**角色的用户加入您的项目，因为他们具有对空间中的所有项目的隐式访问权限。

当您邀请一个用户加入您的项目（未分配**空间管理员**角色）时，该用户将显示在项目下的**项目成员**表中和空间下的**项目成员**表中。

**查看空间中的用户和角色**

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

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

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

1. 选择**成员**选项卡。

   **项目成员**表显示项目中具有角色的所有成员。
**提示**  
如果您拥有**空间管理员**角色，则可以查看您直接受邀参与的项目。导航到项目的**项目设置**，然后选择**我的项目**。

   **空间管理员**表显示了具有**空间管理员**角色的用户。这些用户将被自动（隐式）分配给空间中的所有项目，并且他们在项目中没有角色。

   在**状态**列中，以下为有效值：
   + 已@@ **邀**请 — 已 CodeCatalyst 发送邀请，但用户尚未接受或拒绝。
   + **成员** - 用户接受了邀请。

**Topics**
+ [获取成员及其项目角色的列表](#projects-members-view)
+ [邀请用户加入项目](#projects-members-add)
+ [取消邀请](#projects-members-cancel-invite)
+ [从项目中移除用户](#projects-members-remove)
+ [接受或拒绝项目邀请](#w2aac27c19c15c25)

## 邀请用户加入项目
<a name="projects-members-add"></a>

您可以使用控制台邀请用户加入您的项目。您可以邀请空间成员或添加空间之外的名称。

要邀请用户加入您的项目，您必须使用**项目管理员**或**空间管理员**角色登录。

您无需邀请具有**空间管理员**角色的用户加入您的项目，因为他们具有对空间中的所有项目的隐式访问权限。

当您邀请一个用户加入您的项目（未分配**空间管理员**角色）时，该用户将显示在项目下的**项目成员**表中和空间下的**项目成员**表中。

**从“项目设置”选项卡邀请成员加入您的项目**

1. 导航到您的项目。
**提示**  
您可以在顶部导航栏中选择要查看的项目。

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

1. 选择**成员**选项卡。

1. 在**项目成员**中，选择**邀请新成员**。

1. 键入新成员的电子邮件地址，选择该成员的角色，然后选择**邀请**。有关角色的更多信息，请参阅 [使用用户角色授予访问权限](ipa-roles.md)。

**从项目概述页面邀请成员加入您的项目**

1. 导航到您的项目。
**提示**  
您可以在顶部导航栏中选择要查看的项目。

1. 选择**成员 \$1** 按钮。

1. 键入新成员的电子邮件地址，选择该成员的角色，然后选择**邀请**。有关角色的更多信息，请参阅 [使用用户角色授予访问权限](ipa-roles.md)。

## 取消邀请
<a name="projects-members-cancel-invite"></a>

如果您最近发送了一个邀请，只要该邀请未被接受，便可将其取消。

要管理项目邀请，您必须具有**项目管理员**角色或**空间管理员**角色。

**取消项目成员邀请**

1. 导航到要在其中取消已发送的邀请的项目。

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

1. 查看**成员**选项卡，并验证成员的状态是否为**已邀请**。
**注意**  
您只能取消尚未接受的邀请。

1. 选择受邀成员所在行旁边的选项，然后选择**取消邀请**。

1. 此时将显示一个确认窗口。选择**取消邀请**进行确认。

## 从项目中移除用户
<a name="projects-members-remove"></a>

您可以使用控制台从项目中移除用户。

要从项目中移除用户，您必须使用**项目管理员**或**空间管理员**角色登录。

**注意**  
从空间内的所有项目中移除用户会自动将该用户从空间中移除。

**从项目中移除用户**

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

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

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

1. 选择**成员**选项卡。

1. 选择要移除的配置文件用户旁边的选择器，然后选择**移除**。

1. 确认要移除用户，然后选择**移除**。

## 接受或拒绝项目邀请
<a name="w2aac27c19c15c25"></a>

您可能会收到一封电子邮件邀请，邀请您加入 Amazon CodeCatalyst 项目。您可以接受或拒绝邀请。

**接受或拒绝邀请**

1. 打开邀请电子邮件。

1. 在电子邮件中选择项目链接。

1. 选择**接受**或**拒绝**。

   如果您选择**拒绝**，则会向项目管理账户发送一封电子邮件，告知其您已拒绝邀请。

# 允许使用团队访问项目
<a name="projects-teams"></a>

创建项目后，您可以添加团队。团队允许您对用户进行分组，以便他们可以共享权限，并以项目和空间成员的 CodeCatalyst 身份管理项目、问题跟踪、角色和资源。

您必须拥有**项目管理员**角色才能管理项目团队。

团队也在空间层面进行管理 CodeCatalyst。要了解有关空间中的团队的更多信息，请参阅[允许使用团队访问空间](managing-teams.md)。

**Topics**
+ [向项目添加团队](projects-teams-add.md)
+ [为团队授予项目角色](projects-teams-project-roles.md)
+ [移除团队的项目角色](projects-teams-remove.md)

# 向项目添加团队
<a name="projects-teams-add"></a>

您可以管理团队，该团队中的成员可以访问项目中的资源。

在空间和项目用户的成员页面上，用户可以拥有多个角色。拥有多个角色的用户在拥有多个角色时将显示一个指示器，并且首先会显示其中权限最多的角色。

**添加团队**

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

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

1. 选择**添加团队**。

1. 在**团队**中，从可用团队列表中选择一个团队。

1. 在 “**项目角色**” 下，从中可用的项目角色列表中选择一个角色 CodeCatalyst。
   + **项目管理员** – 有关详细信息，请参阅[项目管理员角色](ipa-role-types.md#ipa-role-project-admin)。
   + **贡献者** – 有关详细信息，请参阅[贡献者角色](ipa-role-types.md#ipa-role-contributor)。
   + **审阅者** – 有关详细信息，请参阅[审阅者角色](ipa-role-types.md#ipa-role-reviewer)。
   + **只读** – 有关详细信息，请参阅[只读角色](ipa-role-types.md#ipa-role-read-only)。

1. 选择**添加团队**。

# 为团队授予项目角色
<a name="projects-teams-project-roles"></a>

团队可以在空间中拥有角色权限，例如**高级用户**。您可以更改团队的空间角色，但请注意，团队的所有成员都将继承这些权限。

**添加或更改项目角色**

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

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

1. 要更改角色，请选择此列表中团队旁边的选择器，然后选择**更改角色**。要添加角色，请选择**添加项目角色**。在**项目**中，选择要添加的项目，然后在**角色**中选择角色。选择一个可用的项目角色：
   + **项目管理员** – 有关详细信息，请参阅[项目管理员角色](ipa-role-types.md#ipa-role-project-admin)。
   + **贡献者** – 有关详细信息，请参阅[贡献者角色](ipa-role-types.md#ipa-role-contributor)。
   + **审阅者** – 有关详细信息，请参阅[审阅者角色](ipa-role-types.md#ipa-role-reviewer)。
   + **只读** – 有关详细信息，请参阅[只读角色](ipa-role-types.md#ipa-role-read-only)。

1. 选择**保存**。

# 移除团队的项目角色
<a name="projects-teams-remove"></a>

在中 CodeCatalyst，您可以查看团队的项目角色。您还可以查看团队中的成员。您可以移除团队的项目角色。

**移除项目角色**

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

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

1. 选择**项目角色**选项卡。

1. 选择要移除的角色。
**重要**  
从团队中移除一个角色会移除团队中所有用户的关联权限。

1. 选择**保存**。

# 允许机器资源的项目访问权限
<a name="projects-machine-resources"></a>

计算机资源 CodeCatalystthat 是中被授予项目或空间权限的特定资源 CodeCatalyst。

**注意**  
“机器资源”一词并不指云基础设施，例如 EC2 实例，而是指具有空间或项目的权限的蓝图或工作流资源。

一个在项目中使用机器资源的示例包括允许蓝图资源代表您访问项目。

当 CodeCatalyst 通过 SSO 进行访问时，计算机资源代表您来自授权资源的身份。机器资源用于向项目中的资源（例如**蓝图**和**工作流**）授予权限。您可以查看项目中的机器资源，也可以选择启用或禁用项目的机器资源。例如，您可能希望禁用机器资源以管理访问权限，并在稍后重新启用机器资源。

在需要撤销或禁用机器资源的情况下，可对机器资源执行这些操作。例如，如果您怀疑凭证可能已被泄露，则可以禁用机器资源。通常，不需要使用这些操作。

您必须拥有**空间管理员**角色或**项目管理员**角色才能查看此页面并在项目级别管理机器资源。

计算机资源也在中的空间级别进行管理 CodeCatalyst。要了解有关空间/项目中的团队的更多信息，请参阅[允许机器资源的空间访问权限](managing-machine-resources.md)。

**Topics**
+ [查看机器资源的项目访问权限](projects-machine-resources-view.md)
+ [禁用机器资源的项目访问权限](projects-machine-resources-disable.md)
+ [启用机器资源的项目访问权限](projects-machine-resources-enable.md)

# 查看机器资源的项目访问权限
<a name="projects-machine-resources-view"></a>

您可以查看正在项目中使用的机器资源的列表。

您必须拥有**空间管理员**角色或**项目管理员**角色。

**查看机器资源**

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

1. 导航到您的项目，然后选择**项目设置**。选择**机器资源**。

1. 在下拉列表中，选择**工作流操作**以仅查看工作流的机器资源。选择**蓝图**以仅查看蓝图的机器资源。

   您也可以使用**筛选条件**字段对名称进行筛选。

# 禁用机器资源的项目访问权限
<a name="projects-machine-resources-disable"></a>

您可以选择禁用正在项目中使用的机器资源。

**重要**  
禁用机器资源将移除对空间中所有关联的蓝图或工作流的所有权限。

您必须拥有**空间管理员**角色或**项目管理员**角色。

**禁用机器资源**

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

1. 导航到您的项目，然后选择**项目设置**。选择**机器资源**。

1. 选择下列选项之一。
**重要**  
禁用机器资源将移除对空间中所有关联的蓝图或工作流的所有权限。
   + 要单独禁用，请选择要禁用的一个或多个机器资源旁边的选择器。选择**禁用**，然后选择**此资源**。
   + 要禁用所有资源，请选择**禁用**，然后选择**所有资源**。
   + 要禁用所有工作流操作，请选择**禁用**，然后选择**所有工作流操作**。
   + 要禁用所有蓝图，请选择**禁用**，然后选择**所有蓝图**。

# 启用机器资源的项目访问权限
<a name="projects-machine-resources-enable"></a>

您可以选择启用正在项目中使用的和已禁用的机器资源。

您必须拥有**空间管理员**角色或**项目管理员**角色。

**启用机器资源**

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

1. 导航到您的项目，然后选择**项目设置**。选择**机器资源**。

1. 选择下列选项之一。
   + 要单独启用，请选择要启用的一个或多个机器资源旁边的选择器。选择**启用**，然后选择**此资源**。
   + 要启用所有资源，请选择**启用**，然后选择**所有资源**。
   + 要启用所有工作流操作，请选择**启用**，然后选择**所有工作流操作**。
   + 要启用所有蓝图，请选择**启用**，然后选择**所有蓝图**。

# 项目的配额
<a name="projects-quotas"></a>

下表描述了 Amazon 中项目的配额和限制 CodeCatalyst。有关 Amazon 配额的更多信息 CodeCatalyst，请参阅[CodeCatalyst 的配额](quotas.md)。


|  |  | 
| --- |--- |
| 每个空间的最大项目数 | 100 | 
| 一个用户可以属于的项目的最大数量 | 1000 | 
| 可以属于一个项目的成员的最大数量。 | 10000 | 
| 项目名称 |  一个空间中的项目名称必须唯一。名称长度必须介于 3 到 63 个字符之间。名称区分大小写。项目名称必须以字母数字字符开头。有效字符：**A-Z、a-z、0-9、空格、****.、,、\$1（下划线）和 -（连字符）** 项目名称不能包含以下任何字符：`! ? @ # $ % ^ & * ( ) + = { } [ ] \| \ / > < ~ ` ' " ; : `  | 
| 项目描述 |  项目描述的长度最多为 200 个字符。有效字符：**A-Z、a-z、0-9、空格、****.、,、\$1（下划线）和 -（连字符）**。项目描述是可选的。  | 

# 发送通知来自 CodeCatalyst
<a name="notifications"></a>

您可以在中设置通知来监控您的项目和资源 CodeCatalyst。用户可以在他们所属的任何项目中选择要接收其电子邮件的项目事件。您还可以选择配置在团队消息应用程序（例如 Slack）中发送给整个团队的通知，方法是配置 CodeCatalyst 空间和 Slack 工作区之间的访问权限，然后为要发送到该 Slack 工作区中的一个或多个频道的项目配置通知。在 CodeCatalyst 空间和 Slack 工作区之间配置访问权限后，项目成员还可以选择添加自己的 Slack 成员， IDs 这样他们就可以直接收到有关互联的 Slack 工作空间和频道中的 CodeCatalyst 事件的通知。

**注意**  
可以发送到 Slack 的项目事件集与用户可以选择通过电子邮件接收通知的事件集不同。

**Topics**
+ [通知的工作原理是什么？](notifications-concepts.md)
+ [开始使用 Slack 通知](getting-started-notifications.md)
+ [从 CodeCatalyst 发送 Slack 和电子邮件通知](notifications-manage.md)

# 通知的工作原理是什么？
<a name="notifications-concepts"></a>

您可以将项目设置为向团队消息收发应用程序（例如 Slack）提供通知。



## 需要具有通知的哪些权限？
<a name="notifications-concepts-permissions"></a>

任何项目成员都可以在中配置、查看、更新或删除频道的通知设置 CodeCatalyst。不过，只有拥有**空间管理员**角色的用户才能添加或删除 Slack 工作区。所有用户都可以为他们所属的项目配置他们希望接收的有关哪些项目事件的电子邮件 CodeCatalyst。

## 我可以配置哪些 CodeCatalyst 事件的通知？
<a name="notifications-concepts-events"></a>

您可以配置为 CodeCatalyst 向一个或多个 Slack 频道发送有关工作流程事件的通知。在 CodeCatalyst 项目和 Slack 之间配置通知后，项目用户可以选择添加自己的 Slack 成员 ID，以便在 Slack 频道中直接接收有关事件的消息。 CodeCatalyst 添加其 Slack 成员的用户 IDs 将在为其项目配置的 Slack 频道 IDs 中收到直接提及，这有助于提高人们对他们关心的事件的认识。

您还可以选择要接收有关哪些事件的电子邮件。这些电子邮件将发送到为您的 AWS Builder ID 配置的电子邮件地址。

## 如何显示通知？
<a name="notifications-concepts-delivery"></a>

您可以配置为 CodeCatalyst 向一个或多个 Slack 频道发送通知。您需要授权 CodeCatalyst 才能授予访问您的 Slack 工作空间的权限。提供授权后， CodeCatalyst 可以向您配置的 Slack 频道发送通知。如果项目成员选择添加其 Slack 成员 ID，他们可以在为该项目配置的 Slack 频道中收到有关 CodeCatalyst事件的提及。

## 我如何设置通知？
<a name="notifications-concepts-setup"></a>

电子邮件通知配置为的一部分 CodeCatalyst。项目用户可以在**我的设置**页面中选择与他们希望接收的电子邮件相关的事件。

要设置项目资源的 Slack 通知，您必须完成以下高级任务。

**设置通知（高级任务）**

1. 在中 CodeCatalyst，您可以在 CodeCatalyst 和消息客户端（例如 Slack）之间**建立连接**。在连接 Slack 工作区后，该工作区将可供空间中的所有项目使用。
**注意**  
只有拥有空间管理员角色的用户才能添加或删除 Slack 工作区。

1. 在中的项目中 CodeCatalyst，**添加您希望团队接收通知的频道**。

1. 在中 CodeCatalyst，您可以**打开各种事件（例如工作流程运行失败）的通知**，并指定要将通知发送到哪个渠道。

有关详细步骤，请参阅[开始使用 Slack 通知](getting-started-notifications.md)。

在 CodeCatalyst 空间和 Slack 之间配置通知后，用户可以选择添加自己的 Slack 成员， IDs 以直接接收有关为其项目配置的 Slack 频道中 CodeCatalyst 事件的消息，

# 开始使用 Slack 通知
<a name="getting-started-notifications"></a>

创建项目后，您可以设置 Slack 通知，以帮助您的团队监控项目资源。

这些步骤将引导您首次设置Slack通知。 CodeCatalyst如果您已经配置了通知，请参阅[从 CodeCatalyst 发送 Slack 和电子邮件通知](notifications-manage.md)。

**注意**  
可以发送到通知频道的项目事件集与用户可以选择通过电子邮件接收通知的事件集不同。有关更多信息，请参阅 [从 CodeCatalyst 发送 Slack 和电子邮件通知](notifications-manage.md)。

**Topics**
+ [先决条件](#getting-started-notifications-prerequisites)
+ [第 1 步： CodeCatalyst 连接到你的 Slack 工作空间](#getting-started-notifications-connect-slack)
+ [第 2 步：将你的 Slack 频道添加到 CodeCatalyst](#getting-started-notifications-add-slack-channel)
+ [第 3 步：测试从 Slack 发送 CodeCatalyst 的通知](#getting-started-notifications-next-steps)
+ [步骤 4：后续步骤](#getting-started-notifications-test)

## 先决条件
<a name="getting-started-notifications-prerequisites"></a>

在开始之前，您需要：
+ 一个 CodeCatalyst 空间。有关创建 CodeCatalyst 空间和首次登录的信息，请参阅[设置并登录 CodeCatalyst设置并登录 CodeCatalyst](setting-up-topnode.md)。
+ 一个 CodeCatalyst 项目。有关更多信息，请参阅 [创建项目](projects-create.md)。
+ 具有**项目管理员或**空间管理员****角色的 CodeCatalyst 帐户。有关更多信息，请参阅 [使用用户角色授予访问权限](ipa-roles.md)。
+ 一个可以访问的 Slack 账户和 Slack 工作空间。 CodeCatalyst
+ 一个用于发送通知的 Slack 频道。 CodeCatalyst 频道可以是公有的或私有的。

## 第 1 步： CodeCatalyst 连接到你的 Slack 工作空间
<a name="getting-started-notifications-connect-slack"></a>

只有拥有**空间管理员**角色的用户才能添加或删除 Slack 工作区。添加或删除 Slack 工作区会影响该空间中的所有项目。要在 CodeCatalyst 和 Slack 之间建立连接，请使用您的 Slack 工作区 CodeCatalyst 执行安全的 OAuth 身份验证握手。

按照以下说明 CodeCatalyst 连接到您的 Slack 工作区。

**注意**  
针对每个 Slack 工作区，只需要执行一次此操作。然后，您可以通过 Slack 频道设置通知。

**要 CodeCatalyst 连接到你的 Slack 工作空间**

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

1. 导航到您的项目。

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

1. 选择**通知**选项卡。

1. 选择**配置通知**。

1. 选择**连接到 Slack 工作区**。

1. 阅读对话框内容，然后选择**连接到 Slack 工作区**。

1. 在**聊天应用程序中的 Amazon Q 开发者版**消息上：

   1. 在右上角，选择包含您的频道的 Slack 工作区。

   1. 选择**允许**。

   您将返回到 CodeCatalyst 控制台。

1. 继续[第 2 步：将你的 Slack 频道添加到 CodeCatalyst](#getting-started-notifications-add-slack-channel)。

## 第 2 步：将你的 Slack 频道添加到 CodeCatalyst
<a name="getting-started-notifications-add-slack-channel"></a>

你需要使用 Slack 频道 ID 才能将你的频道添加到。 CodeCatalyst

**获取 Slack 频道 ID**

1. 登录 Slack。有关更多信息，请参阅[登录到 Slack](https://slack.com/help/articles/212681477-Sign-in-to-Slack)。

1. 前往 Slack 工作区，其中包含您希望通知送达的频道。有关更多信息，请参阅[在 Slack 工作区之间切换](https://slack.com/help/articles/1500002200741-Switch-between-workspaces)或[登录其他 Slack 工作区](https://slack.com/help/articles/212681477-Sign-in-to-Slack)。

1. 在导航窗格中，打开希望通知送达的频道的上下文（右键单击）菜单，然后选择**打开频道详细信息**。

   频道 ID 将显示在对话框底部。

1. 复制**频道 ID** 值。下一步中需要使用该值。

使用你刚才复制的频道 ID，你现在可以将你的 Slack 频道连接到。 CodeCatalyst

**要将你的 Slack 频道添加到 CodeCatalyst**

1. 在开始之前，如果您的 Slack 频道是私有频道，请按如下方式将聊天应用程序中的 Amazon Q 开发者版添加到该频道：

   1. 在 Slack 频道的消息框中，输入 **@aws** 并从对话框中选择 **AWS 应用程序**。

   1. 按 Enter。

      此时会出现 Slackbot 消息，表明聊天应用程序中的 Amazon Q 开发者版不在私有频道中。

   1. 选择**邀请他们**，邀请聊天应用程序中的 Amazon Q 开发者版访问该频道。

1. 在 CodeCatalyst 控制台中，选择 “**下一步**”。

1. 在**频道 ID** 中，粘贴您之前获得的 Slack 频道 ID。

1. 在**频道名称**中，输入名称。我们建议使用 Slack 频道名称。

1. 选择**下一步**。

1. 在**选择通知事件**中，选择要针对其接收通知的事件类型。

1. 选择**结束**。

## 第 3 步：测试从 Slack 发送 CodeCatalyst 的通知
<a name="getting-started-notifications-next-steps"></a>



将项目配置为发送工作流状态通知后，您可以在 Slack 中查看通知。

**在 Slack 中查看通知**

1. 在您的 CodeCatalyst 项目中，[手动启动工作流程](workflows-manually-start.md)以完成工作流程运行并在运行完成时收到状态通知。

1. 在 Slack 中，查看您为通知设置的频道。您的通知会显示每次工作流运行的最新状态以及工作流是失败还是成功。

## 步骤 4：后续步骤
<a name="getting-started-notifications-test"></a>

为您的 CodeCatalyst 空间配置了 Slack 工作空间后，您可以添加其他 Slack 频道现有 CodeCatalyst 项目，并在创建新项目后将其添加到新项目中。您还可以让项目用户知道他们可以为自己的 Slack 成员配置个人 Slack 通知 IDs，并配置他们将接收电子邮件的事件。有关更多信息，请参阅 [从 CodeCatalyst 发送 Slack 和电子邮件通知](notifications-manage.md)。

# 从 CodeCatalyst 发送 Slack 和电子邮件通知
<a name="notifications-manage"></a>

您可以将 CodeCatalyst 配置为发送有关项目中发生的事件的通知。CodeCatalyst 可以向消息收发客户端（例如 Slack 频道）发送通知。让 CodeCatalyst 向 Slack 频道发送消息有助于确保您的整个团队都知道重要事件，例如工作流故障。（可选）您可以选择让 CodeCatalyst 在它发送的 Slack 消息中 @mention 您，这样您就会收到相应的私信（DM）。

CodeCatalyst 还可以通过电子邮件直接向您发送通知。将发送有关任何您具有成员身份的项目中的事件的电子邮件通知。这些电子邮件将发送到在您的 AWS 构建者 ID 中配置的电子邮件地址。

**注意**  
可以发送到 Slack 频道的事件与通过电子邮件发送的事件不同。

**Topics**
+ [配置电子邮件通知](notifications-personal.md)
+ [向 Slack 频道发送通知](notifications-projects.md)
+ [配置 Slack 私信](notifications-personal-slack.md)
+ [编辑通知频道的通知](notifications-edit.md)
+ [移除频道](notifications-remove-channel.md)

# 配置电子邮件通知
<a name="notifications-personal"></a>

您可以选择接收有关任何您具有成员身份的项目中的事件的电子邮件通知。这些电子邮件将发送到在您的 AWS 构建者 ID 中配置的电子邮件地址。默认情况下，您将收到有关所有可发送电子邮件的项目事件的电子邮件。<a name="notifications-personal-email"></a>

**为项目事件配置电子邮件通知**

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

1. 在顶部菜单栏中，选择您的个人资料徽章，然后选择**我的设置**。 CodeCatalyst **我的设置**页面打开。
**提示**  
您还可以通过转到项目或空间的成员页面，然后从成员列表中选择您的姓名，找到您的用户个人资料。

1. 在**电子邮件通知**中，在列表中找到要配置电子邮件通知的项目，然后选择**编辑**。

1. 选择要接收其电子邮件的事件，然后选择**保存**。

# 向 Slack 频道发送通知
<a name="notifications-projects"></a>

您可以将 CodeCatalyst 配置为向团队的 Slack 频道发送有关项目事件的通知。通过执行此操作，您可以帮助确保整个团队了解重要事件，例如工作流运行失败。

**注意**  
项目的任何成员都可以管理发送到该项目的频道的通知。不过，只有拥有**空间管理员**角色的用户才能添加或删除 Slack 工作区。

按照以下说明操作，添加将向其发送通知的 Slack 频道。

**为通知添加 Slack 频道**

1. 如果您添加的是第一个 Slack 频道，请改为参阅[开始使用 Slack 通知](getting-started-notifications.md)。

   设置第一个频道后，请返回此过程以设置其他频道。

1. 通过访问 [https://codecatalyst.aws/](https://codecatalyst.aws/) 打开 CodeCatalyst 控制台。

1. 导航到您的项目。

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

1. 选择**通知**选项卡。

1. 选择**添加频道**。

1. 选择 **选择工作区**，然后选择包含要向其发送通知的频道的 Slack 工作区。

   如果您的 Slack 工作区不在列表中，则可以按照[开始使用 Slack 通知](getting-started-notifications.md)中的说明操作来添加它。

1. 在输入**频道 ID** 之前，如果要添加的 Slack 频道是私人频道，请完成以下步骤：

   1. 在 Slack 频道的消息框中，输入 **@aws** 并从弹出窗口中选择 **AWS 应用程序**。

   1. 按 Enter。

      此时会出现 Slackbot 消息，表明聊天应用程序中的 Amazon Q 开发者版不在私有频道中。

   1. 选择**邀请他们**，邀请聊天应用程序中的 Amazon Q 开发者版访问该频道。

1. 在 CodeCatalyst 的**频道 ID** 字段中，输入 Slack 频道 ID。要查找 ID，请转到 Slack，再在导航窗格中右键单击频道，然后选择**打开频道详细信息**。

   频道 ID 将显示在对话框底部。

1. 在**频道名称**中，输入名称。我们建议使用 Slack 频道名称。

1. 在**选择通知事件**中，选择要针对其接收通知的事件类型。

1. 选择**添加**。

# 配置 Slack 私信
<a name="notifications-personal-slack"></a>

如果已将 CodeCatalyst 项目配置为[向 Slack 频道发送通知](notifications-projects.md)，则也可以私信（DM）形式发送这些通知。通过以 DM 的形式将通知直接发送给您，有助于提高您对拥有角色的项目中发生的事件的认识。要启用 DM，您必须将您的 Slack 成员 ID 添加到 CodeCatalyst。

**配置 Slack 私信**

1. 通过访问 [https://codecatalyst.aws/](https://codecatalyst.aws/) 打开 CodeCatalyst 控制台。

1. 在顶部菜单栏中，选择您的个人资料徽章，然后选择**我的设置**。这将打开 CodeCatalyst **我的设置**页面。
**提示**  
您还可以通过转到项目或空间的成员页面，然后从成员列表中选择您的姓名，找到您的用户个人资料。

1. 在**个人 Slack 通知**中，选择**连接 Slack ID**，然后选择**连接到 Slack 工作区**。这将打开一个单独的窗口。
**提示**  
除非具有**空间管理员**角色的用户为您的 CodeCatalyst 空间添加了 Slack 工作区，否则无法配置此选项。有关更多信息，请参阅[开始使用 Slack 通知](getting-started-notifications.md)和[向 Slack 频道发送通知](notifications-projects.md)。

1. 在权限请求窗口中，确保工作区的名称与为 CodeCatalyst 空间配置的 Slack 工作区匹配。选择**允许**以允许聊天应用程序中的 Amazon Q 开发者版访问工作区。此窗口将关闭，并且 Slack 工作区会将**连接**状态显示为**已连接**。
**提示**  
如果连接状态未发生更改，请检查连接 Slack 工作区时是否出错。您可能需要向上滚动以查看错误。

1. 要停止接收个人 Slack 通知，请选择已连接的 Slack 工作区，然后选择**断开连接 Slack ID**。

# 编辑通知频道的通知
<a name="notifications-edit"></a>

您可以更改通知将转至的频道，也可以全局关闭特定通知。

**编辑通知**

1. 通过访问 [https://codecatalyst.aws/](https://codecatalyst.aws/) 打开 CodeCatalyst 控制台。

1. 导航到您的项目。

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

1. 选择**通知**选项卡。

1. 选择**编辑通知**。

1. 请执行以下操作之一：
   + 要向特定频道发送通知，请从下拉列表中选择该频道。
   + 要全局关闭通知，请选择通知旁边的开关。
   + 要停止向特定频道发送通知，请选择该频道上的 **X**。

1. 选择**保存**。

# 移除频道
<a name="notifications-remove-channel"></a>

您可以从 Amazon CodeCatalyst 中移除 Slack 频道。通过移除 Slack 频道，有关所选 CodeCatalyst 项目的通知将不再发送到该频道。

**移除频道**

1. 通过访问 [https://codecatalyst.aws/](https://codecatalyst.aws/) 打开 CodeCatalyst 控制台。

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

1. 在**项目设置**页面上，选择**通知**选项卡。

1. 选择要移除的频道旁边的指示器，然后选择**移除频道**。在确认窗口中，选择**确定**。