LoginSignup
5
5

More than 1 year has passed since last update.

【AWS】CodeCommitからgit cloneする手順

Last updated at Posted at 2021-08-08

はじめに

普段GitHubを使っているのでCodeCommiからのgitクローンのやり方がわからず、多大な時間を使ってしまったので、多くの方の時間削減につながれば幸いです。

前提

ソースコードがCodeCommitにありレポジトリやIAMなどアカウントが作成せれている。

開発環境

macOS BigSur
バージョン 11.5.1

手順

公式ガイドを参考すると以下の手順になりますが、単にクローンするだけであれば不要な設定もありました。

1、AWS CLI インストール ← 不要
2、AWS Secret Access Keyを作成する ← 不要
3、aws configureファイルの設定 ← 不要
4、gitconfigファイルの設定
5、git keychainを無効にする
6、認証情報の取得
7、git clone

1〜3までは必須では無く(厳密には必要かもしれませんが)4以降でクローンはできました。重要で必須なのは5と6です。
今回簡単にできた方法を紹介します。

目次(手順)

1、git keychainを無効にする
2、IAM の自分のロールで認証情報を取得
3、git clone

実装

それでは実際に作業を進めていきます。

1、git keychainを無効にする

まず、git クローンしてみます。

ターミナル
git clone https://git-codecommit/xxxxxxxxxx

この時点ではfatal: Authentication failed forが返ってきます。
GitHabではこれだけで良かったのですが、CodeCommitの場合、Keychain Access ユーティリティで保存されている認証情報の有効期限が15分しかないのでこれを無効にする必要があります。

git config -l --show-origin | grep credential

このコマンドで下記のhelper=osxkeychainを探します。
file:/path/to/gitconfig credential.helper=osxkeychain

helper=osxkeychaiがあればコメントアウトします。
xx/xx/xx/gitconfigのファイルパスのgitconfigの中にあります。

cd xxx

とかで対象のパスに移動しコメントアウトしてください。
ファイルには色んな行き方があるみたいなので、いずれかの方法を試してください。

2、IAM の自分のロールで認証情報を取得

認証情報作成して、ユーザー、パスワードを取得します。
スクリーンショット 2021-08-08 13.19.15.png

3、git clone

git クローンします。
この時点でユーザーやパスワードを聞かれず、何かしらエラーが返っていたら環境に問題があるので、gitconfigやenvの中身を見て余分なものは削除してください。

ターミナル
git clone https://git-codecommit.xxxxxxxxxx

Username for 'https://git-codecommit.xxxxxxx': 
Password for 'https://git-codecommit.xxxxxxx': 

ここで先程作成した認証情報を打ち込むとクローンされます。

最後に

この手順で簡単にクローンできますが、僕の場合は環境に問題があって解決するのに2日くらい費やしてしまいました。
この、トラブルシューティングの記事もいずれ更新できれば思ってます。

参考

Keychain無効

AWS公式ガイド

Qiita

5
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
5