1つ目のやり方でできなかったため、2通りの手順を用意しました。
①Linux及びGitBashを使用する
②SourceTreeを使用する
#Linux及びGitBasを用いたクローン(方法①)
##config 設定方法
$ touch ~/.ssh/config //config作成
$ vi ~/.ssh/config //config書き込み(直接書き込んでもOK)
configの中身
Host git-codecommit.*.amazonaws.com
User <SSHキーID>
IdentityFile ~/.ssh/<秘密鍵のフォルダー名>
##GitBash起動時に秘密鍵を自動認証
Git Bash 起動
$ vi ~/.bashrc
eval `ssh-agent`
ssh-add -k ~/.ssh/id_rsa
Git Bash 再起動
Agent pid 5898
Enter passphrase for /c/Users/<name>/.ssh/id_rsa:<秘密鍵のpass入力>
鍵なしの場合
pidを入力する(errorが出ても問題ないはず)
接続確認(この作業は無くてもいい)
成功の文字が出たらOK
$ ssh git-codecommit.ap-northeast-1.amazonaws.com
//ap-northeast-1は使用するcodecommitに合わせる
この作業で下記エラーが発生した場合、下の別方法を試す。
Unable to negotiate with XX.XX.XX.XX port XX: no matching host key
type found. Their offer: ssh-rsa
※configに下記の値を追加したら、エラーは無くなるが、秘密鍵を無視しているので使用してはいけない。(他に解決方法があれば教えて欲しい)
HostKeyAlgorithms ssh-rsa
PubkeyAcceptedKeyTypes ssh-rsa
##Git Clone
$ git clone git-codecommit.ap-northeast-1.amazonaws.com/v1/repos/<name>
##SourceTreeでのクローン(方法②)
PuTTYgenを起動
Prametersの設定
公開鍵を作ったときのデータに合わせる
$ ssh-keygen -t rsa -b 4096
//上記ならPrametersはRSAの4096に設定する。
「Load」で秘密鍵を選択する。
「Save private key」を押してppkファイルを保存する。
SourceTreeの設定
「ツール」→「オプション」から先ほど生成したppkを設定する。
sshエージェントを設定する
「ツール」→「sshエージェントを起動…」をクリック
鍵が設定されているか確認する。
クローンする
SourceTreeの「Clone」→「元のパス/URL」にcodecommitのSSHを入力
ssh://<sshキーID>@git-codecommit.ap-northeast-1.amazonaws.com/v1/repos/<name>