# InteliJ에서 AWS CodeCommit을 연동하여 생성된 branch에 반영하는 작업을 해보자.
AWS CodeCommit의 주요 특징?
오픈소스 프로젝트인 github와는 약간 다르게 저장소가 암호화되어 있어서 보안에 있어서는 더 우수하다.
- codecommit을 활용하는 월 활성 접속계정이 5개 이하이고, 계정 당 요청 수가 2000개 이하이면 무료로 사용이 가능한하다.
- 월 활성 접속계정이 6개 이상이 되면 계정 당 한달에 1.0 USD를 내야한다. ("그렇게 비싸지는 않은거 같다.")
1. AWS CodeCommit의 Repository 생성
2022.06.03 - [AWS/CodePipeline (CodeCommit, Build, Deploy)] - AWS CodeCommit Repository 생성
2. InteliJ 환경 구성
File → New → Project from Version Control 클릭!
아래와 같은 화면이 나온다.
URL에 AWS CodeCommit의 주소를 입력하고 Directory에는 해당 소스코드가 저장되는 로컬 저장경로를 지정 한다.
3. AWC CodeCommit 자격증명 수행
URL 연동을 통한 코드를 Clone 받으면 아래와 같이 자격증명 창이 뜬다.
자격 증명은 AWS CodeCommit 자격증명 정보를 입력하면 된다.
자격 증명이 완료되면 해당 소스의 라이브러리를 다운 받고 빌드를 수행한다.
4. branch 확인
AWS CodeCommit에서 새로운 branch를 신규로 생성하고, InteliJ에서 확인을 하면 아래와 같다.
신규로 생성한 브랜치는 아래와 같다. 로컬에서 사용할 브랜치와 원격 서버에 저장되어 있는 브랜치가 표시 되어 있다.
원격 서버에 저장되어 있는 브랜치 중 origin/master는 운영 환경에 바로 반영되는 브랜치라고 볼 수 있다.
5. 소스코드 수정 및 커밋 하기
① 커밋창 실행
② 수정된 소스목록 확인
③ 변경한 소스 내용 확인
④ Commit 시 입력하는 메세지 (필수!)
⑤ 커밋 또는 커밋 후 바로 푸시 버튼을 클릭하여 실행
Push를 클릭하여 코드를 업데이트 한다.
아래와 같이 업데이트 프로젝트를 클릭하여 프로젝트를 업데이트 한다.
여기까지 수행하면 최종 변경된 소스코드가 로컬 환경에 반영이 되었다고 볼 수 있다.
6. 브랜치 변경하기
만약 브랜치가 운영에 바로 반영되는 mastert 브랜치로 기본이 설정 되어 있다면, 개인 브랜치로 변경할 필요가 있다.
개인 브랜치를 생성 후 아래의 과정처럼 체크아웃을 실행하자.
체크 아웃을 실행 후 InteliJ 에서 수정하는 코드는 마스터 브랜치가 아닌 해당 신규 브랜치로 수정된 코드가 반영 될 것이다. AWS CodeCommit에서는 다수의 사용자가 각자의 브랜치에서 코드를 수정하고 운영에 반영할때 병합요청을 하게 되는데 그때 최종 코드 반영 승인자가 승인 후 운영 브랜치인 master 브랜치에 최종적으로 반영 된다고 볼 수 있다.
7. 브랜치 소스 병합 또는 리베이스 수행하기
AWS CodeCommit에 생성한 branch로 변경한 소스코드를 Rebase 한다.
* Rebase란?
용어 그대로 베이스를 다시 설정하는 작업이다.
Git rebase 는 두 개의 공통 Base를 가진 Branch에서 한 Branch의 Base를
다른 Branch의 최신 커밋으로 branch의 base를 옮기는 작업이다.
'IDE & Tools > Intelij' 카테고리의 다른 글
InteliJ 자동정렬 (0) | 2023.03.30 |
---|---|
InteliJ 에서 Private 환경에 postgres RDS 접속하기 (터널링) (0) | 2022.09.22 |
No tests found for given includes: [com.example.firstproject.service.ArticleServiceTest.index](--tests filter) (0) | 2022.04.06 |
Intelij 한글이 깨져서 출력 될때 (0) | 2022.04.04 |
[SpringBoot] .sql 파일 추가 후 실행 시 오류 해결 (h2DB, application.properties) (2) | 2022.04.03 |