

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

# 步驟 2：複製原始程式碼
<a name="transform-containers-step-clone"></a>

在此步驟中，您會提供要 AWS 轉換的應用程式原始碼。您可以從 Git 儲存庫或上傳 zip 檔案提供原始碼。

## 選項 1：Git 儲存庫
<a name="transform-containers-clone-git"></a>

您可以從 Git 儲存庫提供原始程式碼。如果您尚未設定 AWS CodeConnections， AWS Transform 會在此時提示您提供 CodeConnections ARN。您有兩種方式可以指定儲存庫：
+ **上傳 CSV 檔案** — 準備具有資料欄 `repo_name`和 的 CSV 檔案`branch`。`repo_name` 必須為 `owner/repo-name` 格式。資料`branch`欄是選用的；請保留空白，以使用儲存庫的預設分支。範例：

  ```
  repo_name,branch
  owner/my-app,main
  owner/api-service,develop
  owner/another-repo,
  ```
+ **在聊天中提供儲存庫詳細資訊** - 直接在聊天中告知 AWS 轉換儲存庫名稱 (s) 和分支 (s)，而不是上傳 CSV。

AWS 轉換會驗證每個儲存庫是否存在，並可透過 CodeConnections 組態存取，然後複製儲存庫。

**注意**  
個別檔案不得超過 1 GB，且所有儲存庫的總大小不得超過 8 GB。 AWS Transform 會同時複製多個儲存庫以加快處理速度。

**重要**  
Git 複製選項不支援跨多個儲存庫的應用程式。如果您的應用程式需要來自多個儲存庫的原始碼，請將它們封裝為 zip 檔案，並改用 zip 上傳選項。

## 選項 2：Zip 檔案上傳
<a name="transform-containers-clone-zip"></a>

如果您未設定 CodeConnections，或偏好直接上傳原始碼，您可以上傳 zip 檔案。

**將原始碼上傳為 zip 檔案**

1. 出現提示時，為每個應用程式上傳一個 zip 檔案。您可以將檔案拖曳至聊天，或使用附件按鈕。

1. 每個 zip 檔案都應包含一個應用程式的原始程式碼。

1. 個別檔案不得超過 1 GB，且所有上傳的總大小不得超過 8 GB。

## 選用：設定私有相依性
<a name="transform-containers-clone-private-deps"></a>

如果您的應用程式依賴來自私有登錄檔的套件，您可以在此步驟期間設定私有相依性來源。 AWS Transform 支援下列私有相依性類型：
+ **AWS CodeArtifact 儲存庫** — 設定在 AWS CodeArtifact 中託管的 Maven、PyPI 或 npm 儲存庫。 AWS 轉換會顯示帳戶中的可用儲存庫清單，供您選擇。
+ **私有 Amazon ECR 基礎映像** — 如果您的 Dockerfiles 使用私有 Amazon ECR 儲存庫的基礎映像，請提供儲存庫詳細資訊，以便建置環境可以提取這些映像。

當您設定私有相依性時， AWS Transform 會提示您連線到託管這些資源 AWS 帳戶 的 。只有在您使用私有相依性時，才需要此連接器組態。

## 確認容器化偏好設定
<a name="transform-containers-clone-confirm"></a>

原始碼可用後， AWS Transform 會詢問您是否擁有容器化應如何完成的特定指示。您可以選擇性地指定：
+ 是否要產生新的 Dockerfile 或重複使用現有的 Dockerfile。
+ 是處理單一儲存庫中的特定服務，還是處理所有服務。
+ 容器化程序的任何其他偏好設定。

預設值為：

1. 使用 Amazon Linux 2023 基礎映像 (`public.ecr.aws/amazonlinux/amazonlinux:latest`)。

1. 處理儲存庫中的所有應用程式。

1. 如果有的話，請重複使用現有的 Dockerfile，並視需要進行細微修改。

您可以確認 以繼續預設值，或提供特定指示。