공부/AWS

[AWS] CodeCommit 사용법

haejang 2021. 9. 17. 22:02
728x90
728x90

 

AWS CodeCommit이란? + GRC


  • AWS에서 호스팅하는 버전 관리 서비스
  • AWS에서 관리하는 GitHub이라고 생각하면 쉽다
  • CodeCommit Repository를 만들고 사용하는건 Git으로 하는거라 어렵진 않지만, HTTPS 방식이나 SSH 방식이 아닌 HTTPS (GRC)라는 git-remote-codecmmit이란 유틸을 사용하는 새로운 방식이 있다
  • 이는 아마존에서 권장하는 방법이며, Git 자격 증명 설정 필요 없이 IAM 또는 SSO 사용자로 바로 접근할 수 있다
  • 자세한 내용 : https://docs.amazonaws.cn/en_us/codecommit/latest/userguide/setting-up-git-remote-codecommit.html

 

GRC (git-remote-codecommit) 사용 조건


Python 3버전 이상 + pip 9.0.3버전 이상 + Git 1.7.9버전 이상

IAM User/Role : AWSCodeCommitFullAccess or AWSCodeCommitPowerUser 권한 가져야 함

(PowerUser는 Repository 삭제 권한이 없음)

1) Windows 설정

Python 설치 : https://www.python.org/

Git 설치 : http://git-scm.com/downloads

AWSCLI 설치 : https://awscli.amazonaws.com/AWSCLIV2.msi

(AWS 자격 증명을 위한 것이라 Role이 붙어있는 EC2라면 생략해도 무관)

# GRC 설치
> pip install git-remote-codecommit

# AWS 자격증명
> aws configure

 

2) Linux 설정

# pip이 없거나 update가 필요한 경우
$ curl -O https://bootstrap.pypa.io/get-pip.py
$ python3 get-pip.py --user

# git, grc 설치
$ sudo yum install -y git
$ pip3 install git-remote-codecommit

# awscli - aws 자격증명용이라 Role이 붙은 EC2인 경우 없어도 됨
$ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
$ unzip awscliv2.zip
$ sudo ./aws/install
$ aws configure

# root로 GRC를 설치한 경우 - PATH 추가를 해줘야 함
$ PATH=$PATH:/usr/local/bin

 

CodeCommit Repository 생성 & 사용


AWS Console > CodeCommit > Repositories > Create repository

 

 

이름만 정해주고 Create 눌러주면

 

 

이런 Connection steps가 뜬다. 우측의 Clone URL > Clone HTTPS (GRC) 를 눌러 GRC용 URL을 복사해두자

이젠 해당 URL을 Git을 통해 사용하기만 하면 된다

$ touch 1.txt
$ git init
$ git remote add origin codecommit::ap-northeast-1://honglab-test-repository
$ git add .
$ git commit -m "1.txt"
$ git push origin master

 

 

push가 잘된걸 확인할 수 있다

좌측의 사이드바엔 Pull requests, Commits, Branch 등을 확인하고 관리할 수 있는 탭도 보인다

 

+ 빈 Repository에(브랜치가 없는 경우) 콘솔에서 파일을 하나 업로드하는 경우, 자동으로 main branch가 생성되어 사용되니 참고하도록 하자

++ GRC가 아닌 HTTPS나 SSH를 사용하는 경우, IAM User > Security credentials에서 HTTPS Git credentials 또는 SSH keys를 설정해줘야 한다 - GRC를 설치하지 않아도 되지만 자격 증명이 이중으로 필요해서 좀 귀찮다

참고 : https://docs.amazonaws.cn/en_us/codecommit/latest/userguide/setting-up.html

 

끝!

 

 

728x90
728x90