將本機或未版本化的內容遷移至 AWS CodeCommit - AWS CodeCommit

AWS CodeCommit 不再提供給新客戶。的現有客戶 AWS CodeCommit 可以繼續正常使用服務。進一步了解」

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

將本機或未版本化的內容遷移至 AWS CodeCommit

本主題中的程序說明如何將電腦上的現有專案或本機內容遷移至 CodeCommit 儲存庫。隨著此程序,您會完成:

  • 完成 CodeCommit 所需的初始設定。

  • 建立 CodeCommit 儲存庫。

  • 在 Git 版本控制下放置本機資料夾,並將該資料夾的內容推送至 CodeCommit 儲存庫。

  • 檢視 CodeCommit 儲存庫中的檔案。

  • 與您的團隊共用 CodeCommit 儲存庫。

將本機專案遷移至 CodeCommit

步驟 0:存取 CodeCommit 所需的設定

您必須先為 CodeCommit 建立和設定 IAM 使用者,並設定本機電腦進行存取,才能將本機內容遷移至 CodeCommit。您也應該安裝 AWS CLI 來管理 CodeCommit。雖然您可以在不使用 CodeCommit 的情況下執行大多數任務,但 AWS CLI 可在使用 Git 時提供靈活性。

如果您已設定 CodeCommit,您可以跳到 步驟 1:建立 CodeCommit 儲存庫

建立和設定 IAM 使用者以存取 CodeCommit
  1. 前往 Amazon Web Services 帳戶,並前往 http://aws.amazon.com:// Amazon Web Services 帳戶並選擇註冊

  2. 在您的 Amazon Web Services 帳戶中建立 IAM 使用者,或使用現有的使用者。請確定您擁有與該 IAM 使用者相關聯的存取金鑰 ID 和私密存取金鑰。如需詳細資訊,請參閱在您的 Amazon Web Services 帳戶中建立 IAM 使用者

    注意

    CodeCommit 需要 AWS Key Management Service。如果您使用的是現有的 IAM 使用者,請確定沒有政策連接到明確拒絕 CodeCommit 所需的 AWS KMS 動作的使用者。如需詳細資訊,請參閱AWS KMS 和 加密

  3. 登入 AWS Management Console ,並在 https://console.aws.amazon.com/iam/://www. 開啟 IAM 主控台。

  4. 在 IAM 主控台的導覽窗格中,選擇使用者,然後選擇您要為 CodeCommit 存取設定的 IAM 使用者。

  5. Permissions (許可) 標籤上,選擇 Add Permissions (新增許可)

  6. Grant permissions (授予許可) 中,選擇 Attach existing policies directly (直接連接現有政策)

  7. 從政策清單中,選取 AWSCodeCommitPowerUser 或其他 CodeCommit 存取的受管政策。如需詳細資訊,請參閱AWS CodeCommit 的 受管政策

    在您選取要連接的政策之後,請選擇下一步:檢閱以檢閱要連接到 IAM 使用者的政策清單。如果清單正確,請選擇 Add permissions (新增許可)

    如需 CodeCommit 受管政策以及與其他群組和使用者共用儲存庫存取權的詳細資訊,請參閱 共用儲存庫AWS CodeCommit的身分驗證與存取控制

安裝和設定 AWS CLI
  1. 在本機電腦上,下載並安裝 AWS CLI。這是從命令列與 CodeCommit 互動的先決條件。我們建議您安裝 AWS CLI 第 2 版。這是 的最新版本, AWS CLI 並支援所有最新功能。這是 唯一 AWS CLI 支援搭配 使用根帳戶、聯合存取或暫時登入資料的 版本git-remote-codecommit

    如需詳細資訊,請參閱使用 AWS 命令列界面進行設定

    注意

    CodeCommit 僅適用於 「第 1.7.38 版」和更新 AWS CLI 版本。根據最佳實務,請安裝 或 AWS CLI 將 升級至可用的最新版本。若要判斷 AWS CLI 您已安裝的 版本,請執行 aws --version命令。

    若要 AWS CLI 將舊版 升級至最新版本,請參閱安裝 AWS Command Line Interface

  2. 執行此命令,以確認 AWS CLI 已安裝 的 CodeCommit 命令。

    aws codecommit help

    此命令會傳回 CodeCommit 命令的清單。

  3. 使用 configure命令 AWS CLI 以設定檔設定 ,如下所示:

    aws configure

    出現提示時,請指定要與 CodeCommit 搭配使用之 IAM 使用者的 AWS 存取金鑰和 AWS 私密存取金鑰。此外,請務必指定儲存 AWS 區域 庫所在的 ,例如 us-east-2。系統提示您輸入預設輸出格式時,請指定 json。例如,如果您為 IAM 使用者設定設定檔:

    AWS Access Key ID [None]: Type your IAM user AWS access key ID here, and then press Enter AWS Secret Access Key [None]: Type your IAM user AWS secret access key here, and then press Enter Default region name [None]: Type a supported region for CodeCommit here, and then press Enter Default output format [None]: Type json here, and then press Enter

    如需建立和設定設定檔以搭配 使用的詳細資訊 AWS CLI,請參閱下列內容:

    若要連線到儲存庫或其他資源 AWS 區域,您必須 AWS CLI 使用預設區域名稱重新設定 。CodeCommit 支援的預設區域名稱包括:

    • us-east-2

    • us-east-1

    • eu-west-1

    • us-west-2

    • ap-northeast-1

    • ap-southeast-1

    • ap-southeast-2

    • ap-southeast-3

    • me-central-1

    • eu-central-1

    • ap-northeast-2

    • sa-east-1

    • us-west-1

    • eu-west-2

    • ap-south-1

    • ap-south-1

    • ca-central-1

    • us-gov-west-1

    • us-gov-east-1

    • eu-north-1

    • ap-east-1

    • me-south-1

    • cn-north-1

    • cn-northwest-1

    • eu-south-1

    • ap-northeast-3

    • af-south-1

    • il-central-1

    如需 CodeCommit 和 的詳細資訊 AWS 區域,請參閱 區域和 Git 連線端點。如需 IAM、存取金鑰和私密金鑰的詳細資訊,請參閱如何取得登入資料?以及管理 IAM 使用者的存取金鑰。如需 AWS CLI 和 設定檔的詳細資訊,請參閱具名設定檔

接著,您必須安裝 Git。

  • 若為 Linux、macOS 或 Unix:

    若要使用 CodeCommit 儲存庫中的檔案、遞交和其他資訊,您必須在本機電腦上安裝 Git。CodeCommit 支援 Git 1.7.9 版和更新版本。Git 2.28 版支援為初始遞交設定分支名稱。我們建議您使用最新版本的 Git。

    若要安裝 Git,我們建議使用 Git 下載等網站。

    注意

    Git 是一個不斷發展且定期更新的平台。有時,功能變更可能會影響其使用 CodeCommit 的方式。如果您遇到特定版本的 Git 和 CodeCommit 問題,請檢閱 中的資訊疑難排解

  • 用於 Windows:

    若要使用 CodeCommit 儲存庫中的檔案、遞交和其他資訊,您必須在本機電腦上安裝 Git。CodeCommit 支援 Git 1.7.9 版和更新版本。Git 2.28 版支援為初始遞交設定分支名稱。我們建議您使用最新版本的 Git。

    若要安裝 Git,我們建議使用 Git for Windows 等網站。如果您使用此連結來安裝 Git,您可以接受所有安裝預設設定,但下列除外:

    注意

    Git 是一個不斷發展且定期更新的平台。有時,功能變更可能會影響其使用 CodeCommit 的方式。如果您遇到特定版本的 Git 和 CodeCommit 問題,請檢閱 中的資訊疑難排解

CodeCommit 同時支援 HTTPS 和 SSH 身分驗證。若要完成設定,您必須為 CodeCommit (HTTPS,建議大多數使用者)、存取 CodeCommit 時要使用的 SSH 金鑰對 (SSH) 設定 Git 登入資料 git-remote-codecommit(建議用於使用聯合存取的使用者),或包含在 中的登入資料協助程式 AWS CLI。

步驟 1:建立 CodeCommit 儲存庫

在本節中,您可以使用 CodeCommit 主控台來建立您在本教學課程的其餘部分使用的 CodeCommit 儲存庫。若要使用 AWS CLI 建立儲存庫,請參閱 建立儲存庫 (AWS CLI)

  1. 在 https://https://console.aws.amazon.com/codesuite/codecommit/home 開啟 CodeCommit 主控台。

  2. 在區域選擇器中,選擇您要建立儲存庫的 AWS 區域 。如需詳細資訊,請參閱區域和 Git 連線端點

  3. 請在 Repositories (儲存庫) 頁面上,選擇 Create repository (建立儲存庫)。

  4. Create repository (建立儲存庫) 頁面的 Repository name (儲存庫名稱) 中,輸入儲存庫的名稱。

    注意

    儲存庫名稱需區分大小寫。Amazon Web Services 帳戶的 AWS 區域 中名稱必須是唯一的。

  5. (選用) 在 Description (描述) 中,輸入儲存庫的描述。這可協助您和其他使用者識別儲存庫的用途。

    注意

    描述欄位會在主控台中顯示 Markdown,並接受所有 HTML 字元和有效的 Unicode 字元。如果您是使用 GetRepositoryBatchGetRepositories APIs的應用程式開發人員,並且打算在 Web 瀏覽器中顯示儲存庫描述欄位,請參閱 CodeCommit API 參考

  6. (選用) 選擇新增標籤,將一或多個儲存庫標籤 (可協助您組織和管理 AWS 資源的自訂屬性標籤) 新增至儲存庫。如需詳細資訊,請參閱在 中標記儲存庫 AWS CodeCommit

  7. (選用) 展開其他組態,以指定是否使用預設 AWS 受管金鑰 金鑰或您自己的客戶受管金鑰來加密和解密此儲存庫中的資料。如果您選擇使用自己的客戶受管金鑰,您必須確保它在您建立儲存庫 AWS 區域 的 中可用,且金鑰處於作用中狀態。如需詳細資訊,請參閱AWS Key Management Service 和 AWS CodeCommit 儲存庫的加密

  8. (選用) 如果此儲存庫包含 Java 或 Python 程式碼,且您希望 CodeGuru Reviewer 分析,請選取啟用適用於 Java 和 Python 的 Amazon CodeGuru Reviewer。 CodeGuru CodeGuru Reviewer 使用多個機器學習模型來尋找程式碼瑕疵,並在提取請求中建議改進和修正。如需詳細資訊,請參閱 Amazon CodeGuru Reviewer 使用者指南

  9. 選擇 Create (建立)。

建立儲存庫之後,該儲存庫會出現在 Repositories (儲存庫) 清單中。在 URL 欄中,選擇複製圖示,然後選擇要用來連線至 CodeCommit 的通訊協定 (HTTPS 或 SSH)。複製 URL。

例如,如果您將儲存庫命名為 MyFirstRepo 且使用 HTTPS,則 URL 如下所示:

https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyFirstRepo

稍後在步驟 2:將本機內容遷移至 CodeCommit 儲存庫中,您需要用到此 URL。

步驟 2:將本機內容遷移至 CodeCommit 儲存庫

現在您已擁有 CodeCommit 儲存庫,您可以在本機電腦上選擇要轉換為本機 Git 儲存庫的目錄。git init 命令可用於將現有的、無版本控制的內容轉換為 Git 儲存庫,或者,如果您尚無檔案或內容,則用於初始化新的空白儲存庫。

  1. 從本機電腦上的終端機或命令列,將目錄變更到您要做為儲存庫來源的目錄。

  2. 執行下列命令,將 Git 設定為使用名為 的預設分支main

    git config --local init.defaultBranch main

    您也可以執行此命令,main將所有新建立的儲存庫的預設分支名稱設定為 :

    git config --global init.defaultBranch main
  3. 執行 git init 命令,在此目錄中初始化 Git 版本控制。這會在目錄的根建立 .git 子目錄,以啟用版本控制追蹤。此 .git 資料夾也包含儲存庫的所有必要中繼資料。

    git init
  4. 執行下列命令,檢查初始化目錄的狀態:

    git status

    新增您要加入版本控制中的檔案。在此教學中,您會執行 git add 命令搭配 . 指標,以新增這個目錄中的所有檔案。關於其他選項,請參閱 Git 文件。

    git add .
  5. 以遞交訊息為新增的檔案建立遞交。

    git commit -m "Initial commit"
  6. 執行 git push命令,指定目的地 CodeCommit 儲存庫的 URL 和名稱,以及 --all選項。(這是您在步驟 1:建立 CodeCommit 儲存庫中複製的 URL。)

    例如,如果您將儲存庫命名為 MyFirstRepo 且設定為使用 HTTPS,則應該執行下列命令:

    git push https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyFirstRepo --all

步驟 3:在 CodeCommit 中檢視檔案

推送目錄的內容之後,您可以使用 CodeCommit 主控台快速檢視儲存庫中的所有檔案。

  1. 在 https://https://console.aws.amazon.com/codesuite/codecommit/home 開啟 CodeCommit 主控台。

  2. Repositories (儲存庫) 中,從清單中選擇儲存庫名稱 (例如,MyFirstRepoitory)。

  3. 檢視儲存庫中的檔案,以查看分支、複製 URL、設定等等。

步驟 4:共用 CodeCommit 儲存庫

當您在 CodeCommit 中建立儲存庫時,會產生兩個端點:一個用於 HTTPS 連線,另一個用於 SSH 連線。兩者都提供網路上的安全連線。您的使用者可以使用任一通訊協定。無論您建議使用者採用哪個通訊協定,這兩個端點都保持在作用中。您必須先建立允許其他使用者存取儲存庫的 IAM 政策,才能與他人共用儲存庫。提供這些存取指示給您的使用者。

為您的儲存庫建立客戶受管政策
  1. 登入 AWS Management Console ,並在 https://console.aws.amazon.com/iam/://www. 開啟 IAM 主控台。

  2. Dashboard (儀表板) 導覽區域中,選擇 Policies (政策),然後選擇 Create Policy (建立政策)

  3. 建立政策頁面上,選擇匯入受管政策

  4. 匯入受管政策頁面的篩選政策中,輸入 AWSCodeCommitPowerUser。選擇政策名稱旁的按鈕,然後選擇匯入

  5. 建立政策頁面上,選擇 JSON。將 CodeCommit 動作Resource行的「*」部分取代為 CodeCommit 儲存庫的 Amazon Resource Name (ARN),如下所示:

    "Resource": [ "arn:aws:codecommit:us-east-2:111111111111:MyDemoRepo" ]
    提示

    若要尋找 CodeCommit 儲存庫的 ARN,請前往 CodeCommit 主控台,從清單中選擇儲存庫名稱,然後選擇設定。如需詳細資訊,請參閱檢視儲存庫詳細資訊

    如果您希望此政策套用到多個儲存庫,請指定儲存庫的 ARN,將每個儲存庫新增為資源。在每個資源陳述式之間包含逗號,如下所示:

    "Resource": [ "arn:aws:codecommit:us-east-2:111111111111:MyDemoRepo", "arn:aws:codecommit:us-east-2:111111111111:MyOtherDemoRepo" ]

    完成編輯後,請選擇檢閱政策

  6. 檢閱政策頁面的名稱中,輸入政策的新名稱 (例如,AWSCodeCommitPowerUser-MyDemoRepo)。選擇性地提供此政策的描述。

  7. 選擇 Create Policy (建立政策)。

若要管理儲存庫的存取權,請為其使用者建立 IAM 群組、將 IAM 使用者新增至該群組,然後連接您在上一個步驟中建立的客戶受管政策。附加存取所需的任何其他政策,例如 IAMSelfManageServiceSpecificCredentialsIAMUserSSHKeys

  1. 登入 AWS Management Console ,並在 https://console.aws.amazon.com/iam/://www. 開啟 IAM 主控台。

  2. Dashboard (儀表板) 導覽區域中,選擇 Groups (群組),然後選擇 Create New Group (建立新的群組)

  3. 設定群組名稱頁面的群組名稱中,輸入群組的名稱 (例如 MyDemoRepoGroup),然後選擇下一步。請考慮將儲存庫名稱包含於群組名稱中。

    注意

    此名稱在 Amazon Web Services 帳戶中必須是唯一的。

  4. 選取您在上一節中建立的客戶受管政策旁的方塊 (例如,AWSCodeCommitPowerUser-MyDemoRepo)。

  5. Review (檢閱) 頁面上,選擇 Create Group (建立群組)。IAM 會建立已連接指定政策的此群組。群組會出現在與您的 Amazon Web Services 帳戶相關聯的群組清單中。

  6. 從清單中選擇您的群組。

  7. 在群組摘要頁面上,選擇 Users (使用者) 標籤,然後選擇 Add Users to Group (新增使用者到群組)。在顯示與您的 Amazon Web Services 帳戶相關聯之所有使用者的清單中,選取您要允許其存取 CodeCommit 儲存庫之使用者旁的方塊,然後選擇新增使用者

    提示

    您可以使用 [Search (搜尋)] 方塊,依名稱快速尋找使用者。

  8. 新增使用者後,請關閉 IAM 主控台。

建立 IAM 使用者以使用您設定的政策群組和政策來存取 CodeCommit 之後,請將連線至儲存庫所需的資訊傳送給該使用者。

  1. 開啟 CodeCommit 主控台,網址為 https://https://console.aws.amazon.com/codesuite/codecommit/home

  2. 在區域選擇器中,選擇建立儲存庫 AWS 區域 的 。儲存庫專屬於 AWS 區域。如需詳細資訊,請參閱區域和 Git 連線端點

  3. Repositories (儲存庫) 頁面上,選擇您要共用的儲存庫。

  4. Clone URL (複製 URL) 中,選擇您要讓使用者使用的通訊協定。這樣會複製該連線通訊協定的複製 URL。

  5. 向您的使用者傳送複製 URL 以及任何其他指示,例如安裝 AWS CLI、設定設定檔或安裝 Git。請務必包含連線通訊協定的組態資訊 (例如 HTTPS)。