

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

# Git と の開始方法 AWS CodeCommit
<a name="getting-started"></a>

Git と CodeCommit を初めて使用するお客様向けに、このチュートリアルでは、シンプルなコマンドの使用方法について説明します。Git にすでに精通している場合は、このチュートリアルをスキップし、「[CodeCommit の開始方法 ](getting-started-cc.md)」に進むことができます。

このチュートリアルでは、CodeCommit リポジトリのローカルコピーを表すリポジトリを作成します。このリポジトリは、ローカルリポジトリと呼びます。

ローカルリポジトリの作成後、いくつかの変更を加えます。その後、変更を CodeCommit リポジトリに送信 (プッシュ) します。

また、2 人のユーザーが個別にローカルリポジトリへの変更をコミットし、その変更を CodeCommit リポジトリにプッシュする、チーム環境をシミュレートします。その後、ユーザーは CodeCommit リポジトリから変更を自身のローカルリポジトリにプルして、他のユーザーが加えた変更を確認します。

また、ブランチとタグを作成し、CodeCommit リポジトリでのアクセス許可を管理します。

このチュートリアルを完了後、自身のプロジェクトで Git と CodeCommit の主要概念を使用するには、十分な練習が必要です。

以下の[前提条件と設定](setting-up.md)を完了します。
+ IAM ユーザーにアクセス許可を割り当てます。
+ [HTTPS](setting-up-gc.md)、SSH、または [**git-remote-codecommit**](setting-up-git-remote-codecommit.md) を使用してリポジトリに接続するように CodeCommit を設定します。これらの選択肢の詳細については、「[のセットアップAWS CodeCommit](setting-up.md)」を参照してください。
+ リポジトリの作成を含むすべてのオペレーションでコマンドラインまたはターミナル AWS CLI を使用する場合は、 を設定します。

**Topics**
+ [ステップ 1: CodeCommit リポジトリを作成する](#getting-started-create-repo)
+ [ステップ 2: ローカルリポジトリを作成する](#getting-started-set-up-folders)
+ [ステップ 3: 最初のコミットを作成する](#getting-started-create-commit)
+ [ステップ 4: 最初のコミットをプッシュする](#getting-started-init-repo)
+ [ステップ 5: CodeCommit リポジトリを共有し、別のコミットをプッシュしてプルする](#getting-started-pull-commits)
+ [ステップ 6: ブランチを作成して共有する](#getting-started-branching)
+ [ステップ 7: タグを作成して共有する](#getting-started-tags)
+ [ステップ 8: アクセス許可を設定する](#getting-started-permissions)
+ [ステップ 9: クリーンアップする](#getting-started-clean-up)

## ステップ 1: CodeCommit リポジトリを作成する
<a name="getting-started-create-repo"></a>

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

使用する CodeCommit リポジトリが既にある場合は、このステップをスキップできます。

**注記**  
使用状況によっては、リポジトリの作成またはアクセスに対して課金される場合があります。詳細については、CodeCommit 製品情報ページの[料金](https://aws.amazon.com/codecommit/pricing)を参照してください。

**CodeCommit リポジトリを作成するには**

1. [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home) で CodeCommit コンソールを開きます。

1. リージョンセレクタを使用して、リポジトリ AWS リージョン を作成する を選択します。詳細については、「[リージョンと Git 接続エンドポイント](regions.md)」を参照してください。

1. [**Repositories (リポジトリ)**] ページで、[**Create repository (リポジトリの作成)**] を選択します。

1. [**リポジトリの作成**] ページの [**リポジトリ名**] に、新しいリポジトリの名前を入力します (例: **MyDemoRepo**)。
**注記**  
リポジトリ名は 100 文字以内 (大文字と小文字は区別する) で入力してください。詳細については、「[制限](limits.md#limits-repository-names)」を参照してください。

1. (オプション) [**Description (説明)**] に、説明 (例: **My demonstration repository**) を入力します。この説明は、お客様と他のユーザーがリポジトリの用途を識別するのに役立ちます。

1. (オプション) **タグの追加** を選択して、1 つ以上のリポジトリタグ ( AWS リソースの整理と管理に役立つカスタム属性ラベル) をリポジトリに追加します。詳細については、「[でのリポジトリのタグ付け AWS CodeCommit](how-to-tag-repository.md)」を参照してください。

1. (オプション) **追加設定**を展開して、このリポジトリ内のデータを暗号化および復号するためにデフォルト AWS マネージドキー または独自のカスタマーマネージドキーを使用するかどうかを指定します。独自のカスタマーマネージドキーを使用する場合は、リポジトリを作成する AWS リージョン で使用可能であること、およびキーがアクティブであることを確認する必要があります。詳細については、「[AWS Key Management Service AWS CodeCommit および リポジトリの暗号化](encryption.md)」を参照してください。

1. (オプション) このリポジトリに Java または Python コードが含まれ、CodeGuru Reviewer でコードを分析する場合は、[**Enable Amazon CodeGuru Reviewer for Java and Python**] (Java および Python 用に Amazon CodeGuru Reviewer を有効化) を選択します。CodeGuru Reviewer は複数の機械学習モデルを使用して、コードの欠陥を検出し、プルリクエストの改善と修正を自動的に提案します。詳細については、Amazon CodeGuru Reviewer ユーザーガイドを参照してください。

1. [**Create**] を選択します。

**注記**  
このチュートリアルの残りのステップでは、CodeCommit リポジトリの名前として `MyDemoRepo` を使用します。別の名前を選択した場合は、このチュートリアル全体でそれを使用してください。

ターミナルやコマンドラインからリポジトリを作成する方法を含め、リポジトリの作成の詳細については、「[リポジトリの作成](how-to-create-repository.md)」を参照してください。

## ステップ 2: ローカルリポジトリを作成する
<a name="getting-started-set-up-folders"></a>

このステップでは、ローカルマシン上のローカルリポジトリをお客様のレポジトリに接続するように設定します。そのためには、ローカルマシン上のローカルリポジトリを表すディレクトリを選択します。Git を使用して、空の CodeCommit リポジトリのコピーをそのディレクトリ内に複製し、初期化します。次に、コミットに注釈を付けるために使用する Git ユーザー名と E メールアドレスを指定します。

1. [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home) で CodeCommit コンソールを開きます。

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

1. 接続するリポジトリをリストから見つけて選択します。[**クローン URL**] を選択してから、リポジトリのクローン作成やリポジトリへの接続時に使用するプロトコルを選択します。これにより、クローン URL が複製されます。
   + IAM ユーザー、または AWS CLIに含まれている認証情報ヘルパーで Git 認証情報を使用している場合は、HTTPS URL をコピーします。
   + ローカルコンピュータで **git-remote-codecommit** コマンドを使用している場合は、HTTPS (GRC) URL をコピーします。
   + IAM ユーザーで SSH パブリック/プライベートキーペアを使用している場合は、SSH URL をコピーします。
**注記**  
 リポジトリのリストの代わりに**よう**こそページが表示された場合は、サインイン AWS リージョン している に AWS アカウントに関連付けられたリポジトリはありません。リポジトリを作成するには、「[AWS CodeCommit リポジトリを作成する](how-to-create-repository.md)」を参照するか、「[Git と CodeCommit の開始方法](#getting-started)」チュートリアルのステップに従います。

1. (オプション) リポジトリのデフォルトのブランチの名前として **main** を使用するようにローカル Git クライアントを設定することをお勧めします。これは、このガイドのすべての例で、デフォルトのブランチに使用される名前です。また、コンソールで最初のコミットを行う場合に CodeCommit が使用するデフォルトのブランチ名とも同じです。次のコマンドを実行して、デフォルトのブランチ名をシステムにおいてグローバルに設定します。

   ```
   git config --global init.defaultBranch main
   ```

   すべてのリポジトリで異なるデフォルトのブランチ名を使用する場合は、**main** を任意の名前に置き換えてください。このチュートリアルでは、デフォルトのブランチの名前が *main* であることを前提としています。

   リポジトリごとに異なるデフォルトのブランチ名を使用する場合は、この属性をグローバル (**--local**) ではなくローカル (**--global**) に設定できます。

1. ターミナルまたはコマンドプロンプトで、**git clone** コマンドを使用してリポジトリのクローンを作成し、ステップ 3 でコピーしたクローン URL を指定します。クローン URL は、使用するプロトコルと設定によって異なります。例えば、HTTPS と Git 認証情報を使用して、米国東部 (オハイオ) リージョンで *MyDemoRepo* という名前のリポジトリのクローンを作成する場合:

   ```
   git clone https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo my-demo-repo
   ```

   HTTPS を **git-remote-codecommit** で使用している場合: 

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

   SSH を使用している場合: 

   ```
   git clone ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo my-demo-repo
   ```
**注記**  
リポジトリのクローン作成時にエラーが表示される場合は、ローカルコンピュータに必要なセットアップが完了していない可能性があります。詳細については、「[のセットアップAWS CodeCommit](setting-up.md)」を参照してください。

## ステップ 3: 最初のコミットを作成する
<a name="getting-started-create-commit"></a>

このステップでは、ローカルリポジトリで最初のコミットを作成します。そのためには、ローカルリポジトリに 2 つのサンプルファイルを作成します。Git を使用して変更をステージングし、ローカルリポジトリにコミットします。

1. テキストエディタを使用して、ディレクトリに以下の 2 つのサンプルテキストファイルを作成します。ファイルに `cat.txt` および `dog.txt` という名前を付けます。

   ```
   cat.txt
   -------
   The domestic cat (Felis catus or Felis silvestris catus) is a small, usually furry, domesticated, and carnivorous mammal.
   ```

   

   ```
   dog.txt
   -------
   The domestic dog (Canis lupus familiaris) is a canid that is known as man's best friend.
   ```

1. **git config** を実行して、プレースホルダー *your-user-name* と *your-email-address* で表されている、ユーザー名と E メールアドレスをローカルレポジトリに追加します。これにより、コミットを識別しやすくなります。

   ```
   git config --local user.name "your-user-name"
   git config --local user.email your-email-address
   ```

1. ローカルリポジトリの作成時にデフォルトのブランチ名をグローバルに設定しなかった場合は、次のコマンドを実行して、デフォルトのブランチ名を **main** に設定します。

   ```
   git config --local init.defaultBranch main
   ```

1. **git add** を実行して、変更をステージングします。

   ```
   git add cat.txt dog.txt
   ```

1. **git commit** を実行して、以下の変更をコミットします。

   ```
   git commit -m "Added cat.txt and dog.txt"
   ```
**ヒント**  
先ほど行ったコミットの詳細を表示するには、**git log** を実行します。

## ステップ 4: 最初のコミットをプッシュする
<a name="getting-started-init-repo"></a>

このステップでは、ローカルリポジトリから CodeCommit リポジトリにコミットをプッシュします。

ローカルリポジトリ (**git push**) のデフォルトブランチから、Git が CodeCommit リポジトリ (`origin`) に使用するデフォルトのリモート名でコミットをプッシュするために `main` を実行します。

```
git push -u origin main
```

**ヒント**  
ファイルを CodeCommit リポジトリにプッシュしたら、CodeCommit コンソールを使用してコンテンツを表示できます。詳細については、「[リポジトリでのファイルの参照](how-to-browse.md)」を参照してください。

## ステップ 5: CodeCommit リポジトリを共有し、別のコミットをプッシュしてプルする
<a name="getting-started-pull-commits"></a>

このステップでは、CodeCommit リポジトリに関する情報を他のチームメンバーと共有します。チームメンバーは、この情報を使用してローカルコピーを取得し、変更を加えた後、そのローカルコピーを CodeCommit リポジトリにプッシュします。その後、CodeCommit リポジトリからローカルリポジトリに変更をプルします。

このチュートリアルでは、[ステップ 2](#getting-started-set-up-folders) で作成したディレクトリとは別のディレクトリが Git によって作成されるようにすることで、同じチームのユーザーをシミュレートします （通常、このディレクトリは別のマシンにあります）。この新しいディレクトリは、CodeCommit リポジトリのコピーです。既存のディレクトリまたはこの新しいディレクトリには、変更が個別に加えられます。これらのディレクトリへの変更を識別する唯一の方法は、CodeCommit リポジトリからプルすることです。

同じローカルマシン上にあっても、既存のディレクトリを*ローカルリポジトリ*、新しいディレクトリを*共有リポジトリ*と呼びます。

新しいディレクトリから、CodeCommit リポジトリの別のコピーを取得します。次に、新しいサンプルファイルを追加し、共有リポジトリに変更をコミットした後、共有リポジトリから CodeCommit リポジトリにコミットをプッシュします。

最後に、変更をリポジトリからローカルリポジトリにプルした後に参照して、他のユーザーがコミットした変更を確認します。

1. `/tmp` ディレクトリか `c:\temp` ディレクトリに切り替えます。

1. **git clone** を実行して、リポジトリのコピーを共有リポジトリにプルダウンします。

   HTTPS の場合:

   ```
   git clone https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo shared-demo-repo
   ```

   **git-remote-codecommit** で HTTPS を使用する場合: 

   ```
   git clone codecommit://MyDemoRepo shared-demo-repo
   ```

   SSH の場合:

   ```
   git clone ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo shared-demo-repo
   ```
**注記**  
Windows オペレーティングシステムで SSH を使用してリポジトリのクローンを作成する場合は、以下のように SSH キー ID の接続文字列への追加が必要になる場合があります。  

   ```
   git clone ssh://Your-SSH-Key-ID@git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo my-demo-repo
   ```
詳細については、「[Windows で SSH 接続をセットアップする手順](setting-up-ssh-windows.md)」を参照してください。

   このコマンドでは、`MyDemoRepo` は CodeCommit リポジトリの名前です。`shared-demo-repo` は `/tmp` ディレクトリか `c:\temp` ディレクトリで Git が作成するディレクトリの名前です。ディレクトリの作成後、Git はリポジトリのコピーを `shared-demo-repo` ディレクトリにプルダウンします。

1. `shared-demo-repo` ディレクトリに切り替えます。

   ```
   (For Linux, macOS, or Unix) cd /tmp/shared-demo-repo
   (For Windows) cd c:\temp\shared-demo-repo
   ```

1. **git config** を実行して、プレースホルダー *other-user-name* と *other-email-address* で表されている、別のユーザー名と E メールアドレスを追加します。これにより、他のユーザーが作成するコミットをより簡単に識別できます。

   ```
   git config --local user.name "other-user-name"
   git config --local user.email other-email-address
   ```

1. テキストエディタを使用して、`shared-demo-repo` ディレクトリに以下のサンプルテキストファイルを作成します。ファイルに `horse.txt` という名前を付けます。

   ```
   horse.txt
   -------
   The horse (Equus ferus caballus) is one of two extant subspecies of Equus ferus.
   ```

1. **git add** を実行して、変更を共有リポジトリにステージングします。

   ```
   git add horse.txt
   ```

1. **git commit** を実行して、変更を共有リポジトリにコミットします。

   ```
   git commit -m "Added horse.txt"
   ```

1. ローカルリポジトリ (**git push**) のデフォルトブランチから、Git が CodeCommit リポジトリ (`origin`) に使用するデフォルトのリモート名で初期コミットをプッシュするために `main` を実行します。

   ```
   git push -u origin main
   ```

1. ローカルリポジトリに切り替えて、**git pull** を実行し、共有リポジトリが CodeCommit リポジトリに対して作成したコミットをローカルリポジトリにプルします。その後、**git log** を実行して、共有リポジトリから開始されたコミットを確認します。

## ステップ 6: ブランチを作成して共有する
<a name="getting-started-branching"></a>

このステップでは、ローカルリポジトリにブランチを作成し、いくつかの変更を加えた後、そのブランチを CodeCommit リポジトリにプッシュします。その後、CodeCommit リポジトリから共有リポジトリにブランチをプルします。

ブランチを使用すると、異なるバージョンのリポジトリの内容を個別に開発できます (たとえば、チームメンバーの作業に影響を与えずに、新しいソフトウェア機能の開発に取り組むことができます)。その機能が安定したら、ブランチをソフトウェアのより安定したブランチにマージします。

Git を使用してブランチを作成し、そのブランチが最初のコミットを参照するようにします。Git を使用して CodeCommit リポジトリにブランチをプッシュします。その後、共有リポジトリに切り替え、Git を使用して新しいブランチを共有 ローカルリポジトリにプルし、そのブランチを確認します。

1. ローカルリポジトリから、ブランチの名前 (**git checkout** など) と、ローカルリポジトリで作成した最初のコミットの ID を指定して、`MyNewBranch` を実行します。

   コミットの ID がわからない場合は、**git log** を実行して取得します。コミットのユーザー名と E メールアドレスが、他のユーザーのものではなく、お客様のものであることを確認してください。これにより、`main` が、CodeCommit リポジトリの安定したバージョンであり、`MyNewBranch` が、比較的不安定な新しい機能に使用されるブランチであることがシミュレートされます。

    

   ```
   git checkout -b MyNewBranch commit-ID
   ```

1. **git push** を実行して、ローカルリポジトリから CodeCommit リポジトリに新しいブランチを送信します。

   ```
   git push origin MyNewBranch
   ```

1. 続いて、そのブランチを共有リポジトリにプルし、結果を確認します。

   1. 共有リポジトリディレクトリ (shared-demo-repo) に切り替えます。

   1. 新しいブランチをプルします (**git fetch origin**)。

   1. ブランチがプルされたことを確認します (**git branch --all** はリポジトリ内のすべてのブランチのリストを表示します)。

   1. 新しいブランチに切り替えます (**git checkout MyNewBranch**)。

   1. `MyNewBranch` ブランチに切り替えたことを確認するには、**git status** または **git branch** を実行します。出力に現在のブランチが表示されます。この場合は `MyNewBranch` です。

   1. ブランチ内のコミットのリストを表示します (**git log**)。

   呼び出す Git コマンドのリストは以下のとおりです。

   ```
   git fetch origin
   git branch --all
   git checkout MyNewBranch
   git branch or git status
   git log
   ```

1. `main` ブランチに戻り、そのコミットのリストを表示します。Git のコマンドは以下のようになります。

    

   ```
   git checkout main
   git log
   ```

1. ローカルリポジトリ内の `main` ブランチに切り替えます。**git status** または **git branch** を実行できます。出力に現在のブランチが表示されます。この場合は `main` です。Git のコマンドは以下のようになります。

    

   ```
   git checkout main
   git branch or git status
   ```

## ステップ 7: タグを作成して共有する
<a name="getting-started-tags"></a>

このステップでは、2 つのタグをローカルリポジトリに作成し、コミットに関連付けてから、CodeCommit リポジトリにプッシュします。その後、CodeCommit リポジトリから共有リポジトリに変更をプルします。

タグは、コミット (またはブランチや別のタグ) に人間が読める名前を付けるために使用されます。たとえば、これを行うのは、コミットに `v2.1` というタグを付ける場合です。コミット、ブランチ、またはタグには、任意の数のタグを関連付けることができますが、個々のタグは 1 つのコミット、ブランチ、またはタグにのみ関連付けることができます。このチュートリアルでは、1 つのコミットに `release` タグを、もう 1 つのコミットに `beta` タグを付けます。

Git を使用してタグを作成し、最初のコミットに `release` タグを付け、他のユーザーが作成したコミットに `beta` タグを付けます。その後、Git を使用して CodeCommit リポジトリにタグをプッシュします。その後、共有リポジトリに切り替え、Git を使用して新しいタグを共有 ローカルリポジトリにプルし、そのタグを確認します。

1. ローカルリポジトリから、新しいタグの名前 (**git tag**) と、ローカルリポジトリで作成した最初のコミットの ID を指定して、`release` を実行します。

   コミットの ID がわからない場合は、**git log** を実行して取得します。コミットのユーザー名と E メールアドレスが、他のユーザーのものではなく、お客様のものであることを確認してください。これにより、コミットが CodeCommit リポジトリの安定したバージョンであることがシミュレートされます。

   ```
   git tag release commit-ID
   ```

   **git tag** をもう一度実行して、他のユーザーからのコミットに `beta` タグを付けます。これにより、それが比較的不安定な新しい機能に使用されるコミットであることがシミュレートされます。

    

   ```
   git tag beta commit-ID
   ```

1. **git push --tags** を実行して、CodeCommit リポジトリにタグを送信します。

1. ここで、タグを共有リポジトリにプルし、結果を確認します。

   1. 共有リポジトリディレクトリ (shared-demo-repo) に切り替えます。

   1. 新しいタグをプルします (**git fetch origin**)。

   1. タグがプルされたことを確認します (**git tag** はリポジトリ内のタグのリストを表示します)。

   1. 各ログ (**git log release** および **git log beta**) に関する情報を表示します。

   呼び出す Git コマンドのリストは以下のとおりです。

   ```
   git fetch origin
   git tag
   git log release
   git log beta
   ```

1. これをローカルリポジトリでも試してみます。

   ```
   git log release
   git log beta
   ```

## ステップ 8: アクセス許可を設定する
<a name="getting-started-permissions"></a>

このステップでは、共有リポジトリを CodeCommit リポジトリに同期させるアクセス許可をユーザーに付与します。これは任意の手順です。ユーザーが Git 認証情報を使用する場合、または CodeCommit レポジトリにアクセスする IAM ユーザーに SSH キーペアが使用される場合に、CodeCommit レポジトリへのアクセスコントロール方法を学習したいユーザーに推奨されます。

**注記**  
フェデレーティッドアクセス、一時的な認証情報、または IAM Identity Center などのウェブ ID プロバイダーを使用している場合は、ID プロバイダーのユーザー、アクセス、アクセス許可を設定してから、**git-remote-codecommit** を使用します。詳細については、「[git-remote-codecommit AWS CodeCommit を使用した への HTTPS 接続のセットアップ手順](setting-up-git-remote-codecommit.md)」および「[認証情報をローテーションして AWS CodeCommit リポジトリに接続する](temporary-access.md)」を参照してください。

このステップでは、IAM コンソールを使用してユーザーを作成します。このユーザーにはデフォルトで、共有リポジトリを CodeCommit リポジトリに同期させるためのアクセス許可がありません。このアクセス許可の有無を確認するには、**git pull** を実行します。新しいユーザーに同期させるアクセス権限がないと、このコマンドは機能しません。次に、IAM コンソールに戻り、ユーザーによる **git pull** の使用を許可するポリシーを適用します。もう一度、**git pull** を実行して、このアクセス許可の有無を確認します。

このステップは、アマゾン ウェブ サービスアカウントに IAM ユーザーを作成するアクセス許可があると仮定して書かれています。これらのアクセス許可がない場合は、このステップを実行することはできません。チュートリアルで使用したリソースをクリーンアップするには、「[ステップ 9: クリーンアップする](#getting-started-clean-up)」に進みます。

1. にサインイン AWS マネジメントコンソール し、[https://console.aws.amazon.com/iam/](https://console.aws.amazon.com/iam/) で IAM コンソールを開きます。

    で使用したものと同じユーザー名とパスワードでサインインします[セットアップ ](setting-up.md)

1. ナビゲーションペインで [**ユーザー**] を選択し、続いて [**Create New Users (新しいユーザーの作成)**] を選択します。

1. 最初の [**Enter User Names**] (ユーザー名を入力) ボックスに、サンプルユーザー名 (**JaneDoe-CodeCommit** など) を入力します。[**Generate an access key for each user (ユーザーごとにアクセスキーを生成)**] ボックスを選択し、[**作成**] を選択します。

1. [**Show User Security Credentials**] を選択します。アクセスキー ID とシークレットアクセスキーをメモするか、[**Download Credentials (認証情報のダウンロード)**] を選択します。

1. [Git 認証情報を使用した HTTPS ユーザーのセットアップ](setting-up-gc.md) の手順に従って、IAM ユーザーの認証情報を生成して入力します。

   SSH を使用する場合は、「[SSH および Linux、macOS、または Unix: Git と CodeCommit 用にパブリックキーとプライベートキーをセットアップする](setting-up-ssh-unixes.md#setting-up-ssh-unixes-keys-unixes)」または「[ステップ 3: Git および CodeCommit 用のパブリックキーとプライベートキーをセットアップする](setting-up-ssh-windows.md#setting-up-ssh-windows-keys-windows)」の指示に従って、パブリックキーとプライベートキーでユーザーを設定します。

1. **git pull** を実行します。以下のエラーが表示されます。

   HTTPS の場合:

    `fatal: unable to access 'https://git-codecommit.us-east-2.amazonaws.com/v1/repos/repository-name/': The requested URL returned error: 403`. 

   SSH の場合:

   `fatal: unable to access 'ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/repository-name/': The requested URL returned error: 403`. 

   このエラーが表示されるのは、新しいユーザーに共有リポジトリを CodeCommit リポジトリに同期させるアクセス許可がないためです。

1. IAM コンソールに戻ります。ナビゲーションペインで、[**Policies**] を選択し、[**Create Policy**] を選択します。([**Get Started**] ボタンが表示された場合は、そのボタンを選択してから、[**Create Policy**] を選択します)。

1. [**独自のポリシーを作成**] の横で、[**選択**] を選択します。

1. [**Policy Name**] (ポリシー名) ボックスに、名前 (例: **CodeCommitAccess-GettingStarted**) を入力します。

1. [**Policy Document**] (ポリシードキュメント) ボックスに以下のように入力して、IAM ユーザーがその IAM ユーザー自身に関連付けられたリポジトリからプルできるようにします。

    

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Action": [
           "codecommit:GitPull"
         ],
         "Resource": "*"
       }
     ]
   }
   ```

------

    
**ヒント**  
IAM ユーザーがその IAM ユーザー自身に関連付けられたリポジトリにコミットをプッシュできるようにするには、代わりに以下のように入力します。  

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Action": [
           "codecommit:GitPull",
           "codecommit:GitPush"
         ],
         "Resource": "*"
       }
     ]
   }
   ```
他の CodeCommit アクションや、リソースに対してユーザーに付与できるその他のアクセス許可については、[の認証とアクセスコントロール AWS CodeCommit](auth-and-access-control.md) を参照してください。

1. ナビゲーションペインで [**Users**] (ユーザー) を選択します。

1. ポリシーをアタッチするサンプルユーザー名 (**JaneDoe-CodeCommit** など) を選択します。

1. [**Permissions**] タブを選択します。

1. [**管理ポリシー**] で、[**Attach Policy (ポリシーのアタッチ)**] を選択します。

1. 先ほど作成した **CodeCommitAccess-GettingStarted** ポリシーを選択してから、[**Attach Policy**] (ポリシーのアタッチ) を選択します。

1. **git pull** を実行します。今回は、コマンドが機能し、"`Already up-to-date`" メッセージが表示されます。

1. HTTPS を使用する場合は、元の Git 認証情報、または **git-remote-codecommit** を使用している場合は通常のプロファイルに切り替えます。詳細については、「[Git 認証情報を使用した HTTPS ユーザーのセットアップ](setting-up-gc.md)」または「[git-remote-codecommit AWS CodeCommit を使用した への HTTPS 接続のセットアップ手順](setting-up-git-remote-codecommit.md)」の指示を参照してください。

   SSH を使用している場合は、元のキーに切り替えます。詳細については、「[SSH および Linux、macOS、または Unix: Git と CodeCommit 用にパブリックキーとプライベートキーをセットアップする](setting-up-ssh-unixes.md#setting-up-ssh-unixes-keys-unixes)」または「[ステップ 3: Git および CodeCommit 用のパブリックキーとプライベートキーをセットアップする](setting-up-ssh-windows.md#setting-up-ssh-windows-keys-windows)」を参照してください。

次は、このチュートリアルの最後のステップです。

## ステップ 9: クリーンアップする
<a name="getting-started-clean-up"></a>

このステップでは、このチュートリアルで使用した CodeCommit リポジトリを削除します。これにより、ストレージ領域に対して使用料金は発生しなくなります。

CodeCommit リポジトリの削除後は不要になるため、ローカルマシン上のローカルリポジトリと共有リポジトリも削除します。

**重要**  
このリポジトリを削除すると、そのリポジトリを ローカルリポジトリまたは共有リポジトリに複製できなくなります。また、ローカルリポジトリまたは共有リポジトリに対してデータをプルすることもプッシュすることもできなくなります。このアクションは元に戻すことができません。

### CodeCommit リポジトリを削除するには (コンソール)
<a name="getting-started-clean-up-console"></a>

1. [https://console.aws.amazon.com/codesuite/codecommit/home](https://console.aws.amazon.com/codesuite/codecommit/home) で CodeCommit コンソールを開きます。

1. [**Dashboard**] (ダッシュボード) ページのリポジトリのリストから、[**MyDemoRepo**] を選択します。

1. ナビゲーションペインで [**Settings**] (設定) をクリックします。

1. [**設定**] ページの [**リポジトリの削除**] で、[**リポジトリの削除**] を選択します。

1. [**Type the name of the repository to confirm deletion**] (削除の確認のため、リポジトリ名を入力) の横にあるボックスに **MyDemoRepo** と入力し、[**Delete**] (削除) を選択します。

### CodeCommit リポジトリを削除するには (AWS CLI)
<a name="getting-started-clean-up-cli"></a>

[delete-repository](how-to-delete-repository.md#how-to-delete-repository-cli) コマンドを実行します。

```
aws codecommit delete-repository --repository-name MyDemoRepo
```

### ローカルリポジトリと共有リポジトリを削除するには
<a name="getting-started-delete-repos"></a>

Linux、macOS、Unix の場合: 

```
cd /tmp
rm -rf /tmp/my-demo-repo
rm -rf /tmp/shared-demo-repo
```

Windows の場合: 

```
cd c:\temp
rd /s /q c:\temp\my-demo-repo
rd /s /q c:\temp\shared-demo-repo
```