[Git 사용법] 코드리뷰를 위한 깃 명령어

Jae Eon·2021년 5월 8일
1

들어가며

Next-Step 교육을 들으면서 코드 리뷰를 위한 Pull-Request(이하 PR)생성 방법과
오픈 프로젝트 참여를 위한 Fork Clone Branch 생성 페어의 깃에서 코드가져오기 방법을 정리한 포스트 입니다.

사용된 이미지 파일중 일부는 next-step git의 Readme에서 가져왔습니다.

🍊 깃 저장소에서 Fork 하기

Fork 를 클릭하면 내 Git 저장소에 새로운 Repository 가 생성이된다.

🥭 내 컴퓨터로 Clone 하기

fork한 저장소는 github.com에 존재하기 때문에 바로 작업할 수 없다.
clone 명령은 github.com에 존재하는 저장소를 자신의 노트북 또는 PC로 복사하는 과정이다.

  • 터미널에서 아래 코드 입력
git clone -b {본인_아이디} --single-branch https://github.com/{본인_아이디}/{저장소 아이디}
ex) git clone -b javajigi --single-branch https://github.com/miot2j/java-racingcar

--single-branch 는 오픈 리포지토리의 경우 굉장히 많은 branch들이 있어 다른 branch를 제외한 내 branch만 복사해 오기 위함

🍋 기능 구현을 위한 기능 전용 Branch 생성

개발을 할때 기능단위로 Branch를 생성하고 기능구현이 완료되면 PR을 보내고 승인이 되면 삭제하는 것이 일반적이다.

  • branch를 생성하고 생성된 브랜치로 Checkout 하는 코드
git checkout -b 브랜치이름
ex) git checkout -b step1

🍑 Colne 된 파일 IDE에서 열기

로컬 PC에 저장된 파일을 Intellij를 통해 열어야 한다.


다운 받은 폴더를 open하면 된다.

🍈 Pull Request 보내기

코드를 구현후 push가 완료 되었다면
Pull Request를 보내 관리자가 내 코드와 기존의 코드를 Merge해달라고 요청 하도록 한다.

  • pull request는 github에서 제공하는 기능으로 코드리뷰 요청을 보낼 때 사용한다.
  • pull request는 original 저장소(next-step의 저장소)의 브랜치(자신의 github 아이디)와 앞 단계에서 생성한 브랜치 이름(앞 단계의 예에서는 step1)을 기준으로 한다.
ex) 미션을 진행한 javajigi/java-racingcar step1 브랜치 =>
next-step/java-racingcar javajigi 브랜치로 pull request를 보낸다.

위 과정이 끝나면 성공적인 한 사이클이 동작한 것이다.

🍎 원격 저장소에있는 페어의 브랜치에서 코드 가져오기

페어프로그래밍을 진행할 경우 지금까지 구현한 모든 소스 코드는 한 사람의 저장소에서 관리된다.
이를 가져오기 위해선 페어의 저장소에 있는 소스 코드와 커밋 이력을 내 저장소로 가져와야 한다.

git remote add pair https://github.com/{페어_아이디}/{저장소_아이디}.git
git remote -v

origin	https://github.com/{본인_아이디}/{저장소_아이디}.git (fetch)
origin	https://github.com/{본인_아이디}/{저장소_아이디}.git (push)
pair	https://github.com/{페어_아이디}/{저장소_아이디}.git (fetch)
pair	https://github.com/{페어_아이디}/{저장소_아이디}.git (push)
git fetch pair {브랜치_이름}
git checkout -t pair/{브랜치_이름}
git push origin {브랜치_이름}

git remote 명령은 프로젝트의 리모트 저장소를 관리하는 명령어
git fetch 명령은 원격 저장소의 커밋들을 로컬 저장소로 가져오는 명령어
git checkout 명령은 브랜치를 선택하고 브랜치로 이동하는 명령어

  • git remote -v : 등록된 저장소 이름과 URL을 표시합니다.
  • git fetch pair {브랜치}: pair로 등록한 원격 저장소에 있는 브랜치에서 커밋내역을 가져옴
  • git checkout -t pair/{브랜치} : -t 사용시 원격 브랜치를 선택할 수 있다.
profile
🖋정리를 안하면 잊어버린다.👣한 발자국씩 가보자!

0개의 댓글