HTTPS AWS CodeCommit を使用した への git-remote-codecommit 接続のセットアップ手順 - AWS CodeCommit

AWS CodeCommit は、新規顧客には利用できなくなりました。 AWS CodeCommit の既存のお客様は、通常どおりサービスを引き続き使用できます。詳細はこちら

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

HTTPS AWS CodeCommit を使用した への git-remote-codecommit 接続のセットアップ手順

ルートアカウント、フェデレーティッドアクセス、または一時的な認証情報を使用して CodeCommit に接続する場合は、 を使用してアクセスを設定する必要がありますgit-remote-codecommit。このユーティリティは、Git を拡張することで、 CodeCommit リポジトリからコードをプッシュおよびプルする簡単な方法を提供します。これは、フェデレーティッドアクセス、ID プロバイダー、および一時的な認証情報を使用した接続をサポートするために推奨される方法です。フェデレーテッドアイデンティティに許可を割り当てるには、ロールを作成してそのロールの許可を定義します。フェデレーティッド ID が認証されると、その ID はロールに関連付けられ、ロールで定義されている許可が付与されます。フェデレーションのロールの詳細については、IAM ユーザーガイドの「サードパーティー ID プロバイダー (フェデレーション) のロールを作成する」を参照してください。IAM Identity Center を使用する場合は、アクセス許可セットを設定します。認証後に ID がアクセスできる内容を制御するために、IAM Identity Center はアクセス許可セットを IAM のロールに関連付けます。アクセス許可セットの詳細については、「AWS IAM Identity Center User Guide」の「Permission sets」を参照してください。

IAM ユーザーgit-remote-codecommitで を使用することもできます。他の HTTPS 接続方法とは異なり、 git-remote-codecommit ではユーザーの Git 認証情報を設定する必要はありません。

注記

一部の IDEs は、 で使用されるクローン URL 形式をサポートしていませんgit-remote-codecommit。任意の IDE でリポジトリを操作する前に、ローカルコンピュータにリポジトリを手動でクローンする必要がある場合があります。詳細については、「 git-remote-codecommitと のトラブルシューティング AWS CodeCommit」を参照してください。

これらの手順は、Amazon Web Services アカウントがあり、 CodeCommit で少なくとも 1 つのリポジトリを作成し、IAM リポジトリに接続するときにマネージドポリシーを持つ CodeCommit ユーザーを使用するという前提で記述されています。フェデレーティッドユーザーおよびその他の認証情報の更新タイプのアクセスを設定する方法については、「認証情報をローテーションして AWS CodeCommit リポジトリに接続する」を参照してください。

ステップ 0: git-remote-codecommit の前提条件をインストールする

git-remote-codecommit を使用する前に、ローカルコンピュータにいくつかの前提条件をインストールする必要があります。具体的には次のとおりです。

注記

Windows に Python をインストールする場合は、必ず Python をパスに追加するオプションを選択してください。

git-remote-codecommit には pip バージョン 9.0.3 以降が必要です。pip のバージョンを確認するには、ターミナルまたはコマンドラインを開き、次のコマンドを実行します。

pip --version

次の 2 つのコマンドを実行して、pip のバージョンを最新バージョンに更新できます。

curl -O https://bootstrap.pypa.io/get-pip.py python3 get-pip.py --user

CodeCommit リポジトリでファイル、コミット、その他の情報を操作するには、ローカルマシンに Git をインストールする必要があります。 CodeCommit は Git バージョン 1.7.9 以降をサポートしています。Git バージョン 2.28 は、初期コミットのブランチ名の設定をサポートしています。最新バージョンの Git を使用することをお勧めします。

Git をインストールするには、Git のダウンロードなどのウェブサイトをお勧めします。

注記

Git は、定期的に更新されている、発展中のプラットフォームです。時折、機能の変更が CodeCommit での仕組みに影響することがあります。特定のバージョンの Git and CodeCommit に問題がある場合は、 の情報を確認してくださいトラブルシューティング

ステップ 1: CodeCommit の初期設定

以下の手順に従って、IAM ユーザーを作成し、適切なポリシーで設定し、アクセスキーとシークレットキーを取得し、 をインストールして設定します AWS CLI。

IAM にアクセスするための CodeCommit ユーザーを作成して設定するには
  1. アマゾン ウェブ サービスアカウントを作成するには、http://aws.amazon.com にアクセスし、[Sign Up] (サインアップ) を選択します。

  2. Amazon Web Services アカウントで IAM ユーザーを作成するか、既存のユーザーを使用します。アクセスキー ID と、その IAM ユーザーに関連付けられているシークレットアクセスキーがあることを確認します。詳細については、「Amazon Web Services アカウントでの IAM ユーザーの作成」を参照してください。

    注記

    CodeCommit には が必要です AWS Key Management Service。既存の IAM ユーザーを使用している場合は、 CodeCommit で要求される AWS KMS アクションを明示的に拒否するポリシーがユーザーにアタッチされていないことを確認してください。詳細については、「AWS KMS および暗号化」を参照してください。

  3. にサインイン AWS Management Console し、IAM で https://console.aws.amazon.com/iam/ コンソールを開きます。

  4. IAM コンソールのナビゲーションペインで、ユーザーを選択し、IAM アクセス用に設定したい CodeCommit ユーザーを選択します。

  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 は AWS CLI バージョン 1.7.38 以降でのみ動作します。ベストプラクティスとして、 をインストールまたは最新バージョン AWS CLI にアップグレードします。インストール AWS CLI した のバージョンを確認するには、 aws --version コマンドを実行します。

    の古いバージョン AWS CLI を最新バージョンにアップグレードするには、「 のインストール AWS Command Line Interface」を参照してください。

  2. このコマンドを実行して、 の CodeCommit コマンド AWS CLI がインストールされていることを確認します。

    aws codecommit help

    このコマンドは、 CodeCommit コマンドのリストを返します。

  3. 次のように、 configure コマンドを使用して をプロファイル AWS CLI で設定します。

    aws configure

    プロンプトが表示されたら、Word で使用する IAM ユーザーの AWS アクセスキーと AWS シークレットアクセスキーを指定します CodeCommit。また、 などのリポジトリが存在する 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 および プロファイルの詳細については、「名前付きプロファイル」を参照してください。

ステップ 2: Install git-remote-codecommit

git-remote-codecommit をインストールするには、次のステップに従ってください。

git-remote-codecommit をインストールするには
  1. ターミナルまたはコマンドラインで、次のコマンドを実行します。

    pip install git-remote-codecommit
    注記

    オペレーティングシステムと設定によっては、このコマンドを実行するために sudo などの昇格したアクセス許可を使用するか、--user パラメータを使用して、現在のユーザーアカウントなどの特別な特権を必要としないディレクトリにインストールすることが必要になる場合があります。例えば、Linux、macOS、または Unix を実行しているコンピューターの場合は、次のとおりです。

    sudo pip install git-remote-codecommit

    Windows を実行しているコンピュータの場合は、次のとおりです。

    pip install --user git-remote-codecommit
  2. 成功メッセージが表示されるまで、インストールプロセスをモニタリングします。

ステップ 3: CodeCommit コンソールに接続し、リポジトリをクローンする

管理者が URL リポジトリgit-remote-codecommitに使用するクローン CodeCommit を既に送信している場合は、コンソールへの接続をスキップして、リポジトリを直接クローンできます。

a CodeCommit リポジトリに接続するには
  1. CodeCommit codecommit/home で https://console.aws.amazon.com/codesuite/ コンソールを開きます。

  2. リージョンセレクタで、リポジトリが作成された AWS リージョン を選択します。リポジトリは に固有です AWS リージョン。詳細については、「リージョンと Git 接続エンドポイント」を参照してください。

  3. 接続するリポジトリをリストから見つけて選択します。Clone URL を選択し、リポジトリへのクローン作成または接続に使用するプロトコルを選択します。これにより、クローン URL がコピーされます。

    • URL ユーザーで Git 認証情報を使用している場合、または HTTPS に含まれている認証情報ヘルパーを使用している場合は、IAM をコピーします AWS CLI。

    • ローカルコンピュータで git-remote-codecommit コマンドを使用している場合は、HTTPS (GRC) URL をコピーします。

    • SSH ユーザーと URL SSHパブリック/プライベートキーペアを使用している場合は、IAM をコピーします。

    注記

    リポジトリのリストの代わりにウェルカムページが表示された場合は、サインイン AWS リージョン している に AWS アカウントに関連付けられたリポジトリはありません。リポジトリを作成するには、「AWS CodeCommit リポジトリを作成する」を参照するか、「Git と CodeCommit の開始方法」チュートリアルのステップに従います。

  4. ターミナルまたはコマンドプロンプトで、git clone コマンドを使用してリポジトリのクローンを作成します。名前付き AWS CLI プロファイルを作成した場合は、コピーした HTTPS git-remote-codecommit URL とプロファイルの名前を使用します。プロファイルを指定しない場合は、デフォルトのプロファイルが使用されます。ローカルリポジトリは、そのコマンドを実行したディレクトリのサブディレクトリに作成されます。例えば、 という名前のリポジトリをクローンするには MyDemoRepo という名前のローカルリポジトリへの my-demo-repo:

    git clone codecommit://MyDemoRepo my-demo-repo

    という名前のプロファイルを使用して同じリポジトリをクローンするには CodeCommitProfile:

    git clone codecommit://CodeCommitProfile@MyDemoRepo my-demo-repo

    プロファイルで設定されたリポジトリ AWS リージョン とは異なるリポジトリのクローンを作成するには、 AWS リージョン 名前を含めます。例:

    git clone codecommit::ap-northeast-1://MyDemoRepo my-demo-repo

次のステップ

前提条件を完了しました。の手順に従っての開始方法 CodeCommit 、 CodeCommit の使用を開始します。

最初のコミットを作成してプッシュする方法については、「でコミットを作成する AWS CodeCommit」を参照してください。Git を初めて利用する場合は、Git の詳細情報 および Git および の開始方法AWS CodeCommit でも情報を確認できます。