AWS CloudShell での CodeCommit の使用
CodeCommit は、プライベート Git リポジトリをホストする、安全で高度にスケーラブルなマネージド型のソース管理サービスです。AWS CloudShell を使用し、コマンドラインで git-remote-codecommit ユーティリティを使用すると、CodeCommit の操作ができます。このユーティリティは、AWS CloudShell コンピューティング環境を提供し、CodeCommit リポジトリからコードをプッシュおよびプルするための簡単な方法を提供します。これは Git を拡張することによって行われます。詳細については、AWS CodeCommit ユーザーガイドを参照してください。
このチュートリアルでは、CodeCommit リポジトリを作成し、AWS CloudShell コンピューティング環境のクローンを作成する方法について説明します。AWS Cloud で管理されているリモートリポジトリにプッシュする前に、クローンしたリポジトリにファイルをステージングしてコミットする方法も説明します。
前提条件
IAM ユーザーがAWS CloudShell を使用するために必要なアクセス許可については、入門チュートリアルの「前提条件」セクションを参照してください。CodeCommit を使用するには、IAM アクセス許可 も必要です。
さらに、開始する前に次の項目があることを確認してください。
-
Git コマンドとバージョン管理の概念に関する基本事項の理解
-
シェルのホームディレクトリ内のファイルで、ローカルおよびリモートリポジトリにコミットできます。このチュートリアルでは、
my-git-file
と表記します。
ステップ 1: CodeCommit リポジトリを作成してそのクローンを作成する
このステップでは、CodeCommit リポジトリを作成してクローンする方法について説明します。
-
CloudShell のコマンドラインインターフェースで、以下の
codecommit
コマンドを入力し、MyDemoRepo
という名前の CodeCommit リポジトリを作成します。aws codecommit create-repository --repository-name MyDemoRepo --repository-description "My demonstration repository"
リポジトリが正常に作成されると、コマンドラインにサービスのレスポンスが表示されます。
{ "repositoryMetadata": { "accountId": "111122223333", "repositoryId": "0dcd29a8-941a-1111-1111-11111111111a", "repositoryName": "MyDemoRepo", "repositoryDescription": "My demonstration repository", "lastModifiedDate": "2020-11-23T20:38:23.068000+00:00", "creationDate": "2020-11-23T20:38:23.068000+00:00", "cloneUrlHttp": "https://git-codecommit.eu-west-1.amazonaws.com/v1/repos/MyDemoRepo", "cloneUrlSsh": "ssh://git-codecommit.eu-west-1.amazonaws.com/v1/repos/MyDemoRepo", "Arn": "arn:aws:codecommit:eu-west-1:111111111111:MyDemoRepo" } )
-
コマンドラインを使用して、ローカルリポジトリ用の新しいディレクトリを作成し、それを作業ディレクトリにします。
mkdir my-shell-repo cd my-shell-repo
-
git clone
コマンドを使ってリモートリポジトリをクローンします。(あなたが一緒に仕事をしているように git-remote-codecommit では、HTTPS (GRC) の URL スタイルを使用します)。git clone codecommit::eu-west-1://MyDemoRepo
リポジトリのクローンが正常に作成されると、コマンドラインにサービスのレスポンスが表示されます。
Cloning into 'MyDemoRepo'... warning: You appear to have cloned an empty repository.
-
リポジトリのクローンを作成するには、
cd
コマンドを使用します。cd MyDemoRepo
ステップ 2: CodeCommit リポジトリにプッシュする前にファイルをステージングしてコミットする
このステップでは、CodeCommit リポジトリにプッシュする前にファイルをステージングしてコミットする方法について説明します。
-
MyDemoRepo
の Vim エディタ、または AWS CloudShell のファイルアップロード機能を使用して、my-git-file
というファイルをフォルダに追加します。両方の使い方については、「入門チュートリアル」を参照してください。 -
作成したファイルをリポジトリにステージングするには、git
add
コマンドを実行します。git add my-git-file
-
ファイルがステージングされ、コミットできる状態になったことを確認するには、git
status
コマンドを実行します。git status
my-git-file
は、新しいファイルとしてリストされ、コミットする準備ができていることを示す緑色のテキストで表示されます。 -
ステージングされたファイルのこのバージョンをリポジトリにコミットします。
git commit -m "first commit to repo"
注記
コミットを完了するための設定情報の入力を指示される場合は、次の形式を使用します。
$ git config --global user.name "Jane Doe" $ git config --global user.email janedoe@example.com
-
ローカルリポジトリに加えた変更とリモートリポジトリを同期するには、変更内容をアップストリームブランチにプッシュします。
git push