Codecommitに作成したリポジトリのCloneの仕方についてです。
■はじめに
Codecommitを急遽使うことになり、Cloneする際に手間取ったので備忘を兼ねてです。
■どこに手間取ったのか
Codecommitにてtestリポジトリを新規作成し、HTTPSクローンを使用したところで手間取りました。
具体的には下記コマンドを実行した際です。
git clone https://git-codecommit.ap-northeast-1.amazonaws.com/v1/repos/test
上記コマンド実行後に表示されるUsername/Password で何度もはじかれる。。。
■原因
AWSCLIを操作するIAMユーザの認証情報を入力してgit cloneコマンドを実行していたことが原因でした。。。
codecommitリポジトリをクローンする際には、「Git 認証情報」が必要でした。
※下図は「Git認証情報」の一つである「HTTPS Git認証情報」欄です。
少し補足すると、Codecommitで作成したリポジトリをHTTPSでクローンする際、専用の認証情報(=Git認証情報)が必要となり、それを準備していないためにクローンができないという状況でした。
つまり、AWSCLIのクレデンシャル情報ではクローンすることができないということです。
後述しておりますが、解決策の手順は
「Git認証情報を生成し、その情報を使ってクローンする」という内容になっております。
■手順
クローンする際に「HTTPSを使ってクローンする」を選択する想定で手順を記載しております。
※クローン方法は下図の通り他にもあります。
1.AWSCLIを操作するIAMユーザを表示し、「認証情報」タブの下の方にある「AWS CodeCommit の HTTPS Git 認証情報」欄にて「認証情報を生成」をクリックします。
2.以下画面が表示されるため、認証情報をコピーしておくか、CSVファイルをダウンロードしておきます。
※「UserName」「Password」情報をgit cloneする際に使います。注意点ですが、Usernameは、IAMユーザ名と少し異なっているため、きちんと確認してから次の手順に進んでください。(IAMユーザ名そのものを使うとエラーになります)
3.以下コマンドを実行します。
git clone https://git-codecommit.ap-northeast-1.amazonaws.com/v1/repos/test
Username/Passwordは、手順2で確認した情報を入力します。
4.問題なくクローン出来た場合には、リポジトリが表示されます。
下図はgit status の結果です。
以上です。