

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

# 从 Amazon CodeCommit 存储库中删除触发器
<a name="how-to-notify-delete"></a>

您可能想要删除不再使用的触发器。您无法撤消触发器删除操作，但可以重新创建一个触发器。

**注意**  
如果为存储库配置了一个或多个触发器，删除存储库不会删除您配置为这些触发器目标的 Amazon SNS 主题或 Lambda 函数。如果不再需要这些资源，请务必将它们也删除。

**Topics**
+ [从存储库中删除触发器（控制台）](#how-to-notify-delete-console)
+ [从存储库中删除触发器 (Amazon CLI)](#how-to-notify-delete-cli)

## 从存储库中删除触发器（控制台）
<a name="how-to-notify-delete-console"></a>

1. 在 [https://console.aws.amazon.com/codesuite/codemmit](https://console.amazonaws.cn/codesuite/codecommit/home) /home 打开 CodeCommit 控制台。

1. 从 **Repositories (存储库)** 中，选择要删除其存储库事件触发器的存储库。

1. 在存储库的导航窗格中，选择 **Settings**。在**设置**中，选择**触发器**。

1. 从触发器列表中选择要删除的触发器，然后选择**删除**。

1. 在对话框中，键入 **delete** 进行确认。

## 从存储库中删除触发器 (Amazon CLI)
<a name="how-to-notify-delete-cli"></a>

1. 在终端（Linux、macOS 或 Unix）或命令提示符 (Windows) 处，运行 **get-repository-triggers** 命令创建一个 JSON 文件，其中包含为您的存储库配置的所有触发器的结构。例如，要创建一个名为的 JSON 文件{{MyTriggers.json}}，该文件包含为名为的存储库配置的所有触发器的结构 MyDemoRepo：

   ```
   aws codecommit get-repository-triggers --repository-name MyDemoRepo >MyTriggers.json
   ```

   此命令将在您运行该命令的目录{{MyTriggers.json}}中创建一个名为的文件。

1. 在纯文本编辑器中编辑 JSON 文件并删除您要删除的触发器的触发器块。用 `repositoryName` 对替换 `configurationId` 对。保存该文件。

   例如，如果要{{MyFirstTrigger}}从名为的存储库中移除名为的触发器{{MyDemoRepo}}，则应使用以下语句`configurationId`替`repositoryName`换并移除中的语句{{red italic text}}：

   ```
   {
       "repositoryName": "{{MyDemoRepo}}", 
       "triggers": [
           {{{
               "destinationArn": "arn:aws:sns:us-east-2:111122223333:MyCodeCommitTopic", 
               "branches": [
                   "main", 
                   "preprod"
               ], 
               "name": "MyFirstTrigger", 
               "customData": "", 
               "events": [
                   "all"
               ]
           },}} 
           {
               "destinationArn": "arn:aws:lambda:us-east-2:111122223333:function:MyCodeCommitJSFunction", 
               "branches": [], 
               "name": "MyLambdaTrigger", 
               "events": [
                   "all"
               ]
           }  
       ]
   }
   ```

1. 在终端或命令行中，运行 **put-repository-triggers** 命令。这将更新存储库的触发器并删除{{MyFirstTrigger}}触发器：

   ```
   aws codecommit put-repository-triggers --repository-name {{MyDemoRepo}} file://{{MyTriggers.json}}
   ```

   该命令将返回与以下示例类似的配置 ID：

   ```
   {
       "configurationId": "{{0123456-I-AM-AN-EXAMPLE}}"
   }
   ```
**注意**  
要删除名为 {{MyDemoRepo}} 的存储库的所有触发器，您的 JSON 文件应类似下面这样：  

   ```
   {
       "repositoryName": "{{MyDemoRepo}}",
       "triggers": []
   }
   ```