

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 新增或移除上游儲存庫
<a name="repo-upstream-add"></a>

請依照下列各節中的步驟，在 CodeArtifact 儲存庫中新增或移除上游儲存庫。如需上游儲存庫的詳細資訊，請參閱 [在 CodeArtifact 中使用上游儲存庫](repos-upstream.md)。

本指南包含將其他 CodeArtifact 儲存庫設定為上游儲存庫的相關資訊。如需有關設定外部連線至公有儲存庫的資訊，例如 npmjs.com、Nuget Gallery、Maven Central 或 PyPI，請參閱[新增外部連線](https://docs.aws.amazon.com/codeartifact/latest/ug/external-connection.html)。

## 新增或移除上游儲存庫 （主控台）
<a name="repo-upstream-add-console"></a>

執行下列程序中的步驟，使用 CodeArtifact 主控台將儲存庫新增為上游儲存庫。如需使用 新增上游儲存庫的詳細資訊 AWS CLI，請參閱 [新增或移除上游儲存庫 (AWS CLI)](#repo-upstream-add-cli)。

**使用 CodeArtifact 主控台新增上游儲存庫**

1. 開啟位於 https：//[https://console.aws.amazon.com/codesuite/codeartifact/home](https://console.aws.amazon.com/codesuite/codeartifact/home) 的 AWS CodeArtifact 主控台。

1.  在導覽窗格中，選擇**網域**，然後選擇包含儲存庫的網域名稱。

1.  選擇儲存庫的名稱。

1.  選擇**編輯**。

1.  在**上游儲存庫**中，選擇**關聯上游儲存庫**，然後新增要新增為上游儲存庫的儲存庫。您只能在與上游儲存庫相同的網域中新增儲存庫。

1.  選擇**更新儲存庫**。

**使用 CodeArtifact 主控台移除上游儲存庫**

1. 開啟位於 https：//[https://console.aws.amazon.com/codesuite/codeartifact/home](https://console.aws.amazon.com/codesuite/codeartifact/home) 的 AWS CodeArtifact 主控台。

1.  在導覽窗格中，選擇**網域**，然後選擇包含儲存庫的網域名稱。

1.  選擇儲存庫的名稱。

1.  選擇**編輯**。

1.  在**上游儲存庫**中，尋找您要移除的上游儲存庫清單項目，然後選擇**取消關聯**。
**重要**  
從 CodeArtifact 儲存庫移除上游儲存庫後，套件管理員將無法存取上游儲存庫或其任何上游儲存庫中的套件。

1.  選擇**更新儲存庫**。

## 新增或移除上游儲存庫 (AWS CLI)
<a name="repo-upstream-add-cli"></a>

 您可以使用 AWS Command Line Interface () 新增或移除 CodeArtifact 儲存庫的上游儲存庫AWS CLI。若要這樣做，請使用 `update-repository`命令，並使用 `--upstreams` 參數指定上游儲存庫。

您只能在與上游儲存庫相同的網域中新增儲存庫。

**新增上游儲存庫 (AWS CLI)**

1. 如果您尚未執行，請依照 中的步驟[使用 AWS CodeArtifact 設定](get-set-up-for-codeartifact.md)， AWS CLI 使用 CodeArtifact 設定 。

1. 使用 `aws codeartifact update-repository`命令搭配 `--upstreams`旗標來新增上游儲存庫。
**注意**  
呼叫 `update-repository`命令會將現有設定的上游儲存庫取代為 `--upstreams`旗標隨附的儲存庫清單。如果您想要新增上游儲存庫並保留現有的儲存庫，您必須在呼叫中包含現有的上游儲存庫。

   下列範例命令會將兩個上游儲存庫新增至名為 `my_repo` 的儲存庫，該儲存庫位於名為 的網域中`my_domain`。當 CodeArtifact 從儲存庫請求套件時， `--upstreams` 參數中上游`my_repo`儲存庫的順序會決定其搜尋優先順序。如需詳細資訊，請參閱[上游儲存庫優先順序](repo-upstream-search-order.md)。

   如需連線至公有、外部儲存庫的相關資訊，例如 npmjs.com 或 Maven Central，請參閱 [將 CodeArtifact 儲存庫連接至公有儲存庫](external-connection.md)。

   ```
   aws codeartifact update-repository \
      --repository my_repo \
      --domain my_domain \
      --domain-owner 111122223333 \
      --upstreams repositoryName=upstream-1 repositoryName=upstream-2
   ```

    輸出包含上游儲存庫，如下所示。

   ```
   {
          "repository": {
              "name": "my_repo",
              "administratorAccount": "123456789012",
              "domainName": "my_domain",
              "domainOwner": "111122223333",
              "arn": "arn:aws:codeartifact:us-east-2:111122223333:repository/my_domain/my_repo",
              "upstreams": [
                  {
                      "repositoryName": "upstream-1"
                  },
                  {
                      "repositoryName": "upstream-2"
                  }
              ],
              "externalConnections": []
          }
      }
   ```

**移除上游儲存庫 (AWS CLI)**

1. 如果您尚未執行，請依照 中的步驟[使用 AWS CodeArtifact 設定](get-set-up-for-codeartifact.md)， AWS CLI 使用 CodeArtifact 設定 。

1. 若要從 CodeArtifact 儲存庫移除上游儲存庫，請使用 `update-repository`命令搭配 `--upstreams`旗標。提供給命令的儲存庫清單將是 CodeArtifact 儲存庫的新上游儲存庫集。包含您要保留的現有上游儲存庫，並省略您要移除的上游儲存庫。

   若要從儲存庫移除所有上游儲存庫，請使用 `update-repository`命令並包含 ，`--upstreams`而不使用 引數。以下內容會從名為 的儲存庫中移除上游儲存庫`my_repo`，該儲存庫包含在名為 的網域中`my_domain`。

   ```
   aws codeartifact update-repository \
      --repository my_repo \
      --domain my_domain \
      --domain-owner 111122223333 \
      --upstreams
   ```

    輸出顯示 的清單`upstreams`為空白。

   ```
   {
          "repository": {
              "name": "my_repo",
              "administratorAccount": "123456789012",
              "domainName": "my_domain",
              "domainOwner": "111122223333",
              "arn": "arn:aws:codeartifact:us-east-2:111122223333:repository/my_domain/my_repo",
              "upstreams": [],
              "externalConnections": []
          }
      }
   ```