個人用メモです。
##CodeCommit(コードコミット)の役割
AWS上のソースコードやファイルの管理システム。役割はgithubと同じ。
コードのアップロード、履歴の確認、プルリクエストなどができる。
**■メニュー一覧**
##Githubとの違い Githubとの違いは、**CodeCommitの方がセキュリティが高い**こと。
Githubの場合、Privateにしているプロジェクトでも外部の開発関係者と丸ごと共有する場合がある。
このとき、AWSなどのサーバーのアカウント情報やPWなど共有してはいけないコードがGithubにあれば、それらも共有されてしまうため、セキュリティ観点でNG。
##CodeCommitの用途 上述のとおり、**AWSのアカウント情報などプロジェクトの管理者のみが所持しておくべき情報を保存**しておく。
CodeCommitにアクセスする際にAWSのユーザーIDとPWが求められるため、それらを知っている人しかアクセスできず、セキュリティが高い。
##使い方
###レポジトリの作成
Github同様にレポジトリを作成する。
###ファイルの追加 ファイルの追加方法は3種類
- AWS上で作成する
- ファイルを選択してアップロードする
- レポジトリのURLにプッシュする
初回はファイルをアップロードが基本的な使い方かな。
その後はローカルにこのレポジトリをクローンしてリモートレポジトリとして登録する。
CodeCommitのレポジトリと接続するためにはIAMユーザーにCodeCommitへのアクセス権限を付与する必要がある。
**▼クローン手順例** ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/563526/8ab96996-158d-4b51-65b3-06ba32e52af9.png)
cloneの手順例
#clone
git clone https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo my-demo-repo
#レポジトリを登録
git remote add [レポジトリ名] https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo
#レポジトリ登録状況の確認
git remote -v
> ・[IAMユーザーにCodeCommit権限を付与する方法](https://docs.aws.amazon.com/codecommit/latest/userguide/auth-and-access-control-iam-identity-based-access-control.html#managed-policies) ・[CodeCommitレポジトリへのHTTPSでの接続手順](https://docs.aws.amazon.com/codecommit/latest/userguide/how-to-connect.html)
##コミット履歴の確認 左カラムのコミットから各コミットの詳細や履歴を確認することができる。
- コミット:各コミットIDを選択するとコミットの差分が確認できる。
- コミットビジュアライザー:グラフ形式で履歴が確認できる。
- コミットの比較: ブランチどうしで差分の比較ができる。
**▼コミットビジュアライザーの例** ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/563526/1383777e-f7be-33f4-02ad-21f9bf2e317b.png)
##通知設定 コミットやプルリクがあった場合に通知するよう設定することができる。
##レポジトリの削除 削除も簡単にできる。 指定のテキストを打ち込む仕様はGithubと同じ。