AWS Cloud9 の AWS CodeCommit チュートリアル - AWS Cloud9

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

AWS Cloud9 の AWS CodeCommit チュートリアル

この AWS CodeCommit チュートリアルを使用して、AWS Cloud9 開発環境をセットアップし、リモートコードリポジトリを CodeCommit で操作できます。CodeCommit は、AWS クラウド での Git リポジトリのプライベートな保存と管理を有効にするソースコード制御サービスです。CodeCommit の詳細については、AWS CodeCommit ユーザーガイドを参照してください。

このチュートリアルに従って、このサンプルを作成すると、AWS アカウント アカウントに料金が発生する可能性があります。これには、Amazon EC2 や CodeCommit などのサービスで発生する可能性がある料金も含まれます。詳細については、「Amazon EC2 コスト」および「AWS CodeCommitコスト」を参照してください。

前提条件

このサンプルを使用する前に、設定が次の要件を満たしていることを確認します。

  • 既存の AWS Cloud9 EC2 開発環境が存在している必要があります。このサンプルは、Amazon Linux または Ubuntu Server を実行する Amazon EC2 インスタンスに接続された EC2 環境が既にあることを前提としています。別のタイプの環境またはオペレーティングシステムがある場合、このサンプルの指示を関連ツールを設定する必要がある場合があります。詳細については、「での環境の作成 AWS Cloud9」を参照してください。

  • 既存の環境に既に AWS Cloud9 IDE が開いています。環境を開くと、AWS Cloud9 によってその環境の IDE がウェブブラウザで開かれます。詳細については、「AWS Cloud9 で環境を開く」を参照してください。

ステップ 1: 必要なアクセス許可を持つ IAM グループを設定する

AWS 認証情報が AWS アカウント の管理者ユーザーに関連付けられており、このユーザーを使用して CodeCommit を操作する場合は、「ステップ 2: AWS CodeCommit のリポジトリを作成する」までスキップします。

このステップは、AWS Management Consoleまたは AWS コマンドラインインターフェース(AWS CLI)を使って完了できます。

コンソールを使用して、必要なアクセス許可を持つ IAM グループを設定する

  1. AWS Management Console にまだサインインしていない場合は、サインインします。

    このステップでは、AWS アカウント の管理者ユーザーの認証情報を使用してサインインすることをお勧めします。これが実行できない場合は、AWS アカウント 管理者にお問い合わせください。

  2. [IAM コンソール] を開きます。これを行うには、コンソールのナビゲーションバーで、[サービス]を選択します。次に、[IAM] を選択します。

  3. グループ]を選択します。

  4. グループの名前を選択します。

  5. アクセス許可]タブの[管理ポリシー]で[ポリシーのアタッチ]を選択します。

  6. ポリシー名のリストで、次のいずれかのボックスを選択します。

    • AWSCodeCommitPowerUser を選択すると、CodeCommit のすべての機能とリポジトリ関連リソースにアクセスできます。ただし、これによって CodeCommit リポジトリを削除したり、Amazon CloudWatch Events などの他の AWS のサービス のリポジトリ関連のリソースを作成または削除することはできません。

    • AWS アカウント で CodeCommit リポジトリおよび関連リソースを完全に制御するには、[AWSCodeCommitFullAccess] を選択します。これにはリポジトリを削除する機能も含まれます。

    どちらのポリシー名もリストに表示されない場合は、[Filter] (フィルター) ボックスにポリシー名を入力して表示させます。

  7. Attach Policy]を選択します。

これらの AWS マネージドポリシーがグループに与えるアクセス許可リストを表示するには、AWS CodeCommit ユーザーガイドの「AWS CodeCommit のAWS マネージド (事前定義) ポリシー」を参照してください。

ステップ 2: AWS CodeCommit にリポジトリを作成する」にスキップします。

AWS CLI を使用して、必要なアクセス許可を持つ IAM グループを設定する

必要なアクセス許可を記述するAWS マネージドポリシーのグループの名前とポリシーの Amazon リソースネーム (ARN) を指定して IAM attach-group-policy コマンドを実行します。構文は次のとおりです。

aws iam attach-group-policy --group-name MyGroup --policy-arn POLICY_ARN

前述のコマンドで、MyGroup をグループの名前に置き換えます。POLICY_ARN を AWS マネージドポリシーの ARN に置き換えます。

  • arn:aws:iam::aws:policy/AWSCodeCommitPowerUser を選択すると、CodeCommit のすべての機能とリポジトリ関連リソースにアクセスできます。ただし、これによって CodeCommit リポジトリを削除したり、Amazon CloudWatch Events などの他の AWS のサービス のリポジトリ関連のリソースを作成または削除することはできません。

  • AWS アカウント で CodeCommit リポジトリおよび関連リソースを完全に制御するには、arn:aws:iam::aws:policy/AWSCodeCommitFullAccess を選択します。これにはリポジトリを削除する機能も含まれます。

これらの AWS マネージドポリシーがグループに与えるアクセス許可リストを表示するには、AWS CodeCommit ユーザーガイドの「AWS CodeCommit のAWS マネージド (事前定義) ポリシー」を参照してください。

ステップ 2: CodeCommit でリポジトリを作成する

このステップでは、CodeCommit コンソールを使用して CodeCommit にリモートコードリポジトリを作成します。

すでに CodeCommit リポジトリがある場合は、「ステップ 3: 環境をリモートリポジトリに接続する」に進みます。

このステップは、AWS Management Consoleまたは AWS コマンドラインインターフェース(AWS CLI)を使って完了できます。

コンソールを使用して CodeCommit でリポジトリを作成する

  1. 前のステップで管理者ユーザーとして AWS Management Console にサインインしているものの、管理者ユーザーを使用してリポジトリを作成したくないとします。その場合、AWS Management Console からサインアウトします。

  2. https://console.aws.amazon.com/codecommit で CodeCommit コンソールを開きます。

  3. コンソールのナビゲーションバーで、リージョンセレクタを使用して、リポジトリの作成先の AWS リージョン を選択します (例: 米国東部 (オハイオ)。

  4. ウェルカムページが表示された場合は、[今すぐ始める]を選択します。それ以外の場合は、[リポジトリの作成]を選択します。

  5. [Create repository] (リポジトリの作成) ページの [Repository name] (レポジトリ名) に、新しいレポジトリの名前を入力します (例: MyDemoCloud9Repo)。(別の名前を選択する場合は、このサンプル全体でそれに置き換えてください。)

  6. (オプション) [Description] (説明) に、リポジトリに関する説明を入力します。例えば、This is a demonstration repository for the AWS Cloud9 sample. と入力します。

  7. リポジトリの作成]を選択します。[リポジトリに接続]ペインが表示されます。[閉じる]を選択します。このトピックの後半で別の方法でリポジトリに接続するためです。

ステップ 3: 環境をリモートリポジトリに接続する」に進みます。

AWS CLI を使ってCodeCommit でリポジトリを作成する

create-repository AWS CodeCommit コマンドを実行します。リポジトリの名前、オプションの説明、およびリポジトリの作成先 AWS リージョン を指定します。

aws codecommit create-repository --repository-name MyDemoCloud9Repo --repository-description "This is a demonstration repository for the AWS Cloud9 sample." --region us-east-2

前述のコマンドで、us-east-2 を AWS リージョン の ID に置き換えてリポジトリを作成します。サポートされているリージョンのリストについては、「Amazon Web Services 全般のリファレンス」の「AWS CodeCommit」を参照してください。

(別のリポジトリ名を使用する場合は、このサンプル全体でそれに置き換えてください。)

ステップ 3: 環境をリモートリポジトリに接続する

このステップでは、AWS Cloud9 IDE を使用して、前のステップで作成または特定した CodeCommit リポジトリに接続します。

注記

ビジュアルインターフェイスを使って Git を操作したい場合は、リモートリポジトリをクローンすることができます。次に、IDE の Git パネル機能を使用してファイルを追加できます。

使用する AWS Cloud9 開発環境の種類に応じて、次の一連の手順のいずれかを完了します。

環境タイプ 以下の手順に従います

EC2 環境

  1. IDE のターミナルセッションから、次の 2 つのコマンドを実行します。

    git config --global credential.helper '!aws codecommit credential-helper $@' git config --global credential.UseHttpPath true

    詳細については、AWS CodeCommit ユーザーガイド の「AWS Cloud9 と AWS CodeCommit の統合」にある「ステップ 2: AWS CLI EC2 開発環境で AWS Cloud9 の認証情報ヘルパーを設定する」を参照してください。

  2. このトピック後半の「ステップ 4: リモートリポジトリのクローンを環境に作成する」に進みます。

SSH 環境

  1. Git が環境にまだインストールされていない場合は、IDE のターミナルセッションを使用してインストールします。詳細については、AWS CodeCommit ユーザーガイド の「Linux、macOS、または Unix 上の AWS CodeCommit リポジトリへの SSH 接続設定のステップ」の「ステップ 2: Git のインストール」を参照してください。

  2. AWS CodeCommit ユーザーガイド 内の Linux、macOS、または Unix の AWS CodeCommit リポジトリへの SSH 接続設定の設定ステップ の「ステップ 3: Linux、macOS、または Unix で認証情報を設定する」を終了してください。

    AWS Management Console にサインインして IAM コンソールを開くように指示されたら、AWS アカウント の管理者ユーザーの認証情報を使用してサインインすることをお勧めします。これが実行できない場合は、AWS アカウント 管理者にお問い合わせください。

  3. このトピック後半の「ステップ 4: リモートリポジトリのクローンを環境に作成する」に進みます。

ステップ 4: リモートリポジトリのクローンを環境に作成する

このステップでは、AWS Cloud9 IDE を使用して CodeCommit のリモートリポジトリを環境にクローンします。

リポジトリのクローンを作成するには、git clone コマンドを実行します。CLONE_URL をリポジトリのクローン URL に置き換えます。

git clone CLONE_URL

EC2 環境には、https:// で始まる HTTPS クローン URL を指定します。SS 環境 には、ssh:// で始まる SSH クローン URL を指定します。

リポジトリの完全なクローン URL を取得するには、AWS CodeCommit ユーザーガイドの「AWS CodeCommit コンソールを使用してリポジトリの詳細を表示する」を参照してください。

リポジトリにファイルがない場合は、「You appear to have cloned an empty repository.」のような警告メッセージが表示されます。これは想定される動作です。これについては後で説明します。

ステップ 5: リポジトリにファイルを追加する

このステップでは、AWS Cloud9 環境にクローンしたリポジトリに 3 つのシンプルなファイルを作成します。次に、クローンしたリポジトリの Git ステージング領域にファイルを追加します。最後に、ステージングされたファイルをコミットして、そのコミットを CodeCommit のリモートリポジトリにプッシュします。

クローンされたリポジトリにすでにファイルが含まれている場合、操作は不要で、このサンプルの残りの部分はスキップできます。

リポジトリにファイルを追加するには
  1. 新しいファイルを作成します。メニューバーで[File (ファイル)]、[New File (新規ファイル)]の順に選択します。

  2. ファイルに次の内容を入力してから、[File] (ファイル)、[Save] (保存) の順に選択して AWS Cloud9 環境の MyDemoCloud9Repo ディレクトリに bird.txt としてファイルを保存します。

    bird.txt -------- Birds are a group of endothermic vertebrates, characterized by feathers, toothless beaked jaws, the laying of hard-shelled eggs, a high metabolic rate, a four-chambered heart, and a lightweight but strong skeleton.
    注記

    このファイルが正しいディレクトリに保存されたことを確認するには、[Save As] (名前を付けて保存)ダイアログボックスで MyDemoCloud9Repo フォルダを選択します。次に、[Folder] (フォルダ) に /MyDemoCloud9Repo が表示されていることを確認します。

  3. 次の内容で、insect.txt および reptile.txt という名前のファイルを 2 つ作成します。ファイルを MyDemoCloud9Repo ディレクトリに保存します。

    insect.txt ---------- Insects are a class of invertebrates within the arthropod phylum that have a chitinous exoskeleton, a three-part body (head, thorax, and abdomen), three pairs of jointed legs, compound eyes, and one pair of antennae.
    reptile.txt ----------- Reptiles are tetrapod (four-limbed vertebrate) animals in the class Reptilia, comprising today's turtles, crocodilians, snakes, amphisbaenians, lizards, tuatara, and their extinct relatives.
  4. ターミナルで、cd コマンドを実行して MyDemoCloud9Repo ディレクトリに切り替えます。

    cd MyDemoCloud9Repo
  5. git status コマンドを実行して、ファイルが正しく MyDemoCloud9Repo ディレクトリに保存されたことを確認します。3 つのファイルはすべて追跡されていないファイルとして表示されます。

    Untracked files: (use "git add <file>..." to include in what will be committed) bird.txt insect.txt reptile.txt
  6. git add コマンドを実行して、ファイルを Git ステージング領域に追加します。

    git add --all
  7. git status コマンドを実行して、ファイルが正しく Git ステージング領域に追加されたことを確認します。3 つのファイルがすべてコミットされる変更としてリストされます。

    Changes to be committed: (use "git rm --cached <file>..." to unstage) new file: bird.txt new file: insect.txt new file: reptile.txt
  8. git commit コマンドを実行して、ステージングされたファイルをコミットします。

    git commit -m "Added information about birds, insects, and reptiles."
  9. git push コマンドを実行して、コミットを CodeCommit のリモートリポジトリにコマンドをプッシュします。

    git push -u origin master
  10. ファイルが正常にプッシュされたかどうかを確認します。CodeCommit コンソール (https://console.aws.amazon.com/codecommit) を開きます (まだ開いていない場合)。

  11. 上部のナビゲーションバーの右端近くで、リポジトリを作成した AWS リージョン を選択します (米国東部 (オハイオ)など)。

  12. ダッシュボード]ページで、[MyDemoCloud9Repo]を選択します。3 つのファイルが表示されます。

CodeCommit リポジトリの試用を続行するには、AWS CodeCommit ユーザーガイド の「リポジトリの内容を参照する」を参照してください。

Git を初めて使用する場合で CodeCommit リポジトリに手を加えたくない場合は、[Git を試す] ウェブサイトのサンプル Git リポジトリを試してください。

ステップ 6: クリーンアップする

このサンプルを使用し終わった後 AWS アカウント で料金が継続的に発生するのを防ぐには、CodeCommit リポジトリを削除します。指示については、AWS CodeCommit ユーザーガイドで「AWS CodeCommitリポジトリを削除する」を参照してください。

必ず環境も削除してください。手順については、「環境の削除」を参照してください。