AWS CodeCommit の開始方法 - AWS CodeCommit

AWS CodeCommit の開始方法

このチュートリアルでは、いくつかの主要な CodeCommit 機能の使用方法を説明します。まず、リポジトリを作成し、リポジトリにいくつかの変更をコミットします。次に、ファイルを参照し、変更を表示します。他のユーザーのプルリクエストを作成して、自分のコードの変更を確認したり、コメントを追加したりすることもできます。

Git に慣れていない場合は、Git および CodeCommit の開始方法 を完了することも検討してください。これらのチュートリアルを完了後、自身のプロジェクトやチーム環境で CodeCommit を使用するには、十分な練習が必要です。

CodeCommit コンソールの折りたたみ可能なパネルを使用して、有益な情報を表示することができます。これは、情報アイコン ( )、またはそのページの [Info (情報)] リンクから開くことができます。このパネルは、いつでも閉じることができます。


            詳細なガイダンスをコンソールで表示する

また、CodeCommit コンソールでは、リポジトリ、ビルドプロジェクト、デプロイアプリケーション、パイプラインなどのリソースをすばやく検索することもできます。[Go to resource (リソースに移動)] または / キーを押して、リソースの名前を入力します。一致するものはすべてリストに表示されます。検索では大文字と小文字が区別されません。リソースを表示する権限がある場合のみ表示されます。詳細については、「コンソールでのリソースの表示」を参照してください。

前提条件

開始する前に、以下の前提条件と設定手順を完了する必要があります。

  • IAM ユーザーへのアクセス権限の割り当て

  • このチュートリアルでローカルマシンでの HTTP および SSH 接続に使用する認証情報管理の設定

  • すべてのオペレーション (リポジトリの作成を含む) でコマンドラインまたはターミナルを使用する場合の AWS CLI の設定

ステップ 1: CodeCommit レポジトリを作成する

CodeCommit コンソールを使用して、CodeCommit リポジトリ を作成できます。このチュートリアルで使用するリポジトリがすでにある場合は、このステップをスキップできます。

注記

使用状況によっては、リポジトリの作成またはアクセスに対して課金される場合があります。詳細については、CodeCommit 製品情報ページの「料金表」を参照してください。

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

  1. https://console.aws.amazon.com/codesuite/codecommit/home にある CodeCommit コンソールを開きます。

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

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

  4. [リポジトリの作成] ページの [リポジトリ名] に、新しいリポジトリの名前を入力します (例: MyDemoRepo)。

    注記

    リポジトリ名は 100 文字以内 (大文字と小文字は区別する) で入力してください。詳細については、「制限」を参照してください。

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

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

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

  8. [作成する] を選択します。


                コンソールからのリポジトリの作成
注記

リポジトリに MyDemoRepo 以外の名前を使用する場合は、その名前を残りのステップで必ず使用してください。

リポジトリを開いたら、CodeCommit コンソールから直接ファイルを追加する方法が表示されます。

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

リポジトリにファイルを追加するには以下の方法で行います。

  • CodeCommit コンソールでファイルを作成する。

  • CodeCommit コンソールを使用して、ローカルコンピュータからファイルをアップロードします。

  • Git クライアントを使用してこのリポジトリをローカルコンピュータにクローンし、CodeCommit リポジトリにファイルの追加、コミット、およびプッシュを行います。

もっとも簡単な開始方法は、CodeCommit コンソールを開いてファイルを追加することです。

リポジトリにファイルを追加するには

  1. リポジトリのナビゲーションバーで [コード] を選択します。

  2. [ファイルの追加] を選択し、ファイルの作成、あるいはコンピュータからファイルのアップロードを選択します。このチュートリアルでは、両方を実行する方法を示します。

  3. ファイルを追加するには、次の操作を行います。

    1. ブランチのドロップダウンリストで、ファイルを追加するブランチを選択します。デフォルトのブランチが自動的に選択されます。この例では、デフォルトブランチの名前は master です。別のブランチにファイルを追加する場合は、別のブランチを選択します。

    2. [File name (ファイル名)] に、ファイルの名前を入力します。コードエディタで、ファイルのコードを入力します。

    3. [Author name (作者名)] に、他のリポジトリーユーザーに表示する名前を入力します。

    4. [E メールアドレス] に E メールアドレスを入力します。

    5. (オプション) [メッセージのコミット] に短いメッセージを入力します。これはオプションですが、このファイルを追加した理由をチームメンバーが把握しやすいように、コミットメッセージを追加することをお勧めします。コミットメッセージを入力しない場合は、デフォルトメッセージが使用されます。

    6. [変更のコミット] を選択します。

    ファイルをアップロードするには、次の操作を行います。

    • ファイルをアップロードしている場合は、アップロードするファイルを選択します。

      
                                CodeCommit コンソールにおけるファイルのアップロードビュー
    • [Author name (作者名)] に、他のリポジトリーユーザーに表示する名前を入力します。

    • [E メールアドレス] に E メールアドレスを入力します。

    • (オプション) [メッセージのコミット] に短いメッセージを入力します。これはオプションですが、このファイルを追加した理由をチームメンバーが把握しやすいように、コミットメッセージを追加することをお勧めします。コミットメッセージを入力しない場合は、デフォルトメッセージが使用されます。

    • [変更のコミット] を選択します。

詳細については、「AWS CodeCommit リポジトリでファイルを操作する」を参照してください。

Git クライアントを使用してリポジトリをクローンするには、Git をローカルコンピュータにインストールし、CodeCommit リポジトリをクローンします。いくつかのファイルをローカルリポジトリに追加し、CodeCommit リポジトリにプッシュします。詳細な説明については、「Git および CodeCommit の開始方法」を参照してください。Git は使い慣れているが、CodeCommit リポジトリでこれを実行する方法が不明な場合は、「コミットを作成する」、「ステップ 2: ローカルリポジトリを作成する」、または「リポジトリへの接続」で例や説明を確認することができます。

CodeCommit リポジトリにファイルを追加したら、それらのファイルをコンソールで表示できます。

ステップ 3: リポジトリの内容を参照する

CodeCommit コンソールを使用して、リポジトリ内のファイルを確認したり、ファイルの内容をすばやく読み取ったりすることができます。これは、どのブランチをチェックアウトするか、リポジトリのローカルコピーを作成するかどうかを判断するのに役立ちます。

リポジトリを参照するには

  1. [Repositories (リポジトリ)] から MyDemoRepo を選択します。

  2. このページには、リポジトリのデフォルトブランチのコンテンツが表示されます。別のブランチを表示したり、特定のタグのコードを表示するには、リストから表示するブランチまたはタグを選択します。次のスクリーンショットで、ビューは [マスター] ブランチに設定されています。

    
                        リポジトリの内容の参照
  3. リポジトリ内のファイルの内容を表示するには、リストからファイルを選択します。表示されるコードの色を変更するには、設定アイコンを選択します。

    
                        ファイルの内容を表示する

    詳細については、「リポジトリでのファイルの参照」を参照してください。

  4. リポジトリのコミット履歴を参照するには、[Commits (コミット)] を選択します。コンソールには、デフォルトブランチのコミット履歴が新しい日付順に表示されます。作成者、日付などによってコミットの詳細を確認します。

    
                        コンソールでのコミット履歴の表示
  5. ブランチ 別または Git タグ 別にコミット履歴を表示するには、リストから表示するブランチまたはタグを選択します。

  6. コミットとその親コミットとの違いを表示するには、省略形式のコミット ID を選択します。空白の変更の表示/非表示、変更のインライン表示 (統合ビュー)、または並べて表示 (分割ビュー) など、変更の表示方法を選択できます。

    注記

    コードやその他のコンソール設定を表示するための設定は、変更するたびにブラウザの Cookie として保存されます。詳細については、「ユーザー設定の操作」を参照してください。

    
                        [統合] ビューに表示された変更 (空白の変更の表示を有効にした状態)
  7. コミットに関するすべてのコメントを表示するには、そのコミットを選択し、 変更をスクロールしてインラインで表示します。自分のコメントを追加して、他のユーザーによって行われたコメントに返信することもできます。

    詳細については、「コミットについてコメントする」を参照してください。

  8. 2 つのコミット指定子 (タグ、ブランチ、コミット ID など) の違いを表示するには、ナビゲーションペインで [コミット]、[コミットの比較] の順に選択します。

    
                        ブランチの先端へのコミットを分割ビューで比較する

    詳細については、「リポジトリのコミット履歴を参照する」および「コミットの比較」を参照してください。

  9. [コミット] で、[Commit Visualizer] タブを選択します。

    
                        コンソールでのリポジトリのグラフィカルな表示

    コミットグラフが表示され、グラフでは各コミットの件名が該当するコミットポイントの横に示されます。件名の表示は 80 文字に制限されています。

  10. コミットの詳細を確認するには、省略コミット ID を選択します。特定のコミットからグラフをレンダリングするには、グラフ内のポイントを選択します。詳細については、「リポジトリのコミット履歴のグラフを表示する 」を参照してください。

ステップ 4: プルリクエストを作成して共同作業を行う

リポジトリで他のユーザーと作業する場合、コードを共同作業して変更を確認することができます。プルリクエストを作成して、他のユーザーがブランチのコード変更を確認してコメントできるようにすることができます。プルリクエストの承認ルールを 1 つ以上作成することもできます。たとえば、プルリクエストをマージする前に、少なくとも 2 人の他のユーザーがプルリクエストを承認する必要がある承認ルールを作成できます。プルリクエストが承認されたら、それらの変更を送信先ブランチにマージできます。リポジトリの通知を設定した場合、リポジトリーユーザーは、リポジトリーイベント (例: プルリクエストの場合、コードにコメントがついた時) に関する通知を E メールで受け取ることができます。詳細については、「AWS CodeCommit リポジトリイベントの通知を設定する」を参照してください。

重要

プルリクエストを作成する前に、レビューするコードの変更が含まれるブランチを作成する必要があります。詳細については、「ブランチを作成する」を参照してください。

プルリクエストを作成し、共同作業するには

  1. ナビゲーションペインで、[プルリクエスト] を選択します。

  2. [プルリクエスト] で、[プルリクエストの作成] を選択します。

    ヒント

    また、プルリクエストは、[Branches] や [Code] から作成することもできます。

    [Create pull request (プルリクエストの作成)] の [ソース] で、レビューする変更が含まれるブランチを選択します。[送信先] で、プルリクエストがクローズされた際に確認済みのコードをマージするブランチを確認します。[Compare] を選択します。

  3. マージの詳細と変更を確認し、プルリクエストにレビューする変更とコミットが含まれていることを確認します。その場合、[タイトル] にこのレビューのタイトルを入力します。これは、リポジトリのプルリクエストのリストに表示されるタイトルです。[Description (説明)] に、このレビューに関する詳細やレビューアにとって有益な情報を入力します。[作成] を選択します。

    
                        プルリクエストの作成
  4. プルリクエストは、リポジトリのプルリクエストのリストに表示されます。開いているリクエスト、閉じたリクエスト、自分が作成したリクエストなどを表示するようにビューをフィルタリングできます。

    
                        リポジトリでプルリクエストを表示する
  5. プルリクエストに承認ルールを追加して、特定の条件が満たされていることを確認してからマージできます。プルリクエストに承認ルールを追加するには、リストからプルリクエストを選択します。[Approvals (承認)] タブで、[Create approval rule (承認ルールの作成)] を選択します。

  6. [Rule name (ルール名)] で、ルールにわかりやすい名前を付けます。たとえば、プルリクエストをマージする前に 2 人のユーザーにプルリクエストの承認をリクエストする場合は、ルールに Require two approvals before merge という名前を付けます。[Number of approvals needed (必要な承認の数)] に必要な番号、「2」を入力します。デフォルトは 1 です。[Submit] を選択します。承認ルールと承認プールメンバーの詳細については、「プルリクエストの承認ルールを作成する」を参照してください。

    
                        プルリクエストの承認ルールの作成
  7. リポジトリの通知を設定し、プルリクエストイベントをユーザーに通知することを選択した場合、ユーザーは新しいプルリクエストに関する E メールを受信します。ユーザーは、特定の行のコードへの変更とコメント、ファイル、プルリクエスト自体を表示できます。テキストや絵文字でコメントに返信することもできます。必要に応じて、プルリクエストブランチに変更をプッシュでき、これによりプルリクエストが更新されます。

  8. リクエストに加えられた変更に問題がなければ、[Approve (承認)] を選択します。プルリクエストに対して承認ルールが設定されていない場合でも、プルリクエストを承認することを選択できます。これにより、プルリクエストを確認したことと、変更の承認を明確に記録できます。気が変わった場合は、承認を取り消すこともできます。

    
                        プルリクエストの承認の表示
    注記

    プルリクエストを作成した場合は、プルリクエストは承認できません。

  9. すべてのコード変更が確認され、合意に達したことに満足したら、次のいずれかを実行します。

    • ブランチのマージなしでプルリクエストを終了するには、[Close pull request (プルリクエストの終了)] を選択します。

    • ブランチをマージしてプルリクエストを閉じる場合は、[Merge (マージ)] を選択します。送信元と送信先の差異に応じてコードに使用できるマージ戦略を選び、マージが完了した後に送信元のブランチを自動的に削除するかどうかを選択できます。選択が決まったら、[Merge pull request (プルリクエストのマージ)] を選択してマージを完了します。

      
                                CodeCommit コンソールでのマージで利用できるマージ戦略を示すプルリクエスト。
    • 自動的に解決できないマージ競合がブランチにある場合、CodeCommit コンソールで解決するか、ローカルの Git クライアントを使用してブランチをマージし、マージをプッシュできます。詳細については、「AWS CodeCommit リポジトリ内のプルリクエストの競合を解決する」を参照してください。

    注記

    ローカルリポジトリの git merge コマンドを使用して変更をプッシュすることで、いつでも手動でプルリクエストブランチを含めたブランチをマージできます。

詳細については、「プルリクエストの操作」および「承認ルールテンプレートの操作」を参照してください。

ステップ 5: クリーンアップ

CodeCommit リポジトリを必要としなくなった場合には、CodeCommit リポジトリ およびこの演習で使用した他のリソースを削除して、ストレージ領域に対して課金され続けないようにすることが必要です。

重要

このアクションは元に戻すことができません。削除したリポジトリは ローカル repo や共有リポジトリに複製できなくなります。また、ローカル repo または共有リポジトリから、そのリポジトリに対してデータをプルまたはプッシュしたり、Git オペレーションを実行できなくなります。

リポジトリの通知を設定した場合、リポジトリを削除するとリポジトリ用に作成された Amazon CloudWatch Events ルールも削除されます。そのルールのターゲットとして使用された Amazon SNS トピックは削除されません。

リポジトリにトリガーを設定した場合、リポジトリを削除しても、それらのトリガーのターゲットとして設定した Amazon SNS トピックまたは Lambda 関数は削除されません。不要なリソースは必ず削除してください。詳細については、「リポジトリからトリガーを削除する」を参照してください。

CodeCommit リポジトリ を削除するには

  1. https://console.aws.amazon.com/codesuite/codecommit/home にある CodeCommit コンソールを開きます。

  2. [リポジトリ] で、削除するリポジトリを選択します。このトピックの命名規則に従っていれば、[MyDemoRepo] という名前になります。

  3. ナビゲーションペインで [設定] を選択します。

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

  5. delete」と入力後、[削除] を選択します。リポジトリは完全に削除されます。

ステップ 6: 次のステップ

CodeCommit とその機能のいくつかを理解できたところで、以下のことを検討します。