협업 GIT & GITHUB

HUNI·2023년 12월 2일

Clone 부터 PR 까지


1. 팀장이 설정한 원격저장소에 올리면 팀원은 해당 레포지토리 주소를 clone 한다.

$git clone 원격저장소URL

2. 협업할 때는 새로운 branch를 따서 작업한다.

git branch issue-9      //issue-9 브랜치 생성
git branch              //브랜치 현황 확인
git checkout issue-9    //issue-9으로 브랜치 전환

3. 해당 브랜치에서 작업하는 과정이다. 이 때, 팀원들이 알아보기 편하게 commit 현황을 보여줘야 하므로 commit convention 맞추고, 하나의 기능 단위로 add 와 commit이 이루어져야 한다.

git add .        //현재 untracked 된 파일들 모두 staged 처리
git commit -m "feat: [POST] /users 회원가입 api"
git push origin (branch 이름)     //원격저장소에 저장

해당 commit convention은 AngularJs commit convention 이다.

4. Merge 부터 PR 까지

해당 작업의 단계는 다음과 같다.

A. 새로 판 branch 에서 작업 끝난 후 해당 파일들 add, commit한다.
(dev 브랜치에서 pull 받기 전에 백업하기 위해)

B. dev 브랜치에서 pull 받은 다음, issue-9 브랜치로 넘어와 dev 브랜치와 merge한다.

git checkout dev
git pull origin dev   //dev 브랜치로 넘어와 pull 받자
git checkout issue-9
git branch     //현재 어디 브랜치에 있는 지 확인
git merge dev  //issue-9브랜치에서 dev와 merge

C. Merge Conflict 해결 후 commit 과 push를 해준다.
D. 깃허브로 들어가 PR를 통해 DEV로 merge 시킨다.

E. 이후, Issue 게시물에 #(PR 번호) 를 단다.

GIT BRANCH 삭제


이미 main 브랜치에 merge 된 브랜치는 더이상 가치가 없다. 이전 지점으로 돌아가고 싶으면, commit 내역 보면 되기 때문이다.

로컬 브랜치와 원격 브랜치 둘 다 삭제 해야한다!

1. 로컬 브랜치 삭제

  • merge가 완료된 브랜치 일 때
git branch -d <브랜치명>
  • merge가 완료되지 않았고, commit 해야 할 내역이 남아있을 때
git branch -D <브랜치명>   //강제 브랜치 삭제 

2. 원격 브랜치 삭제

git push origin --delete <브랜치명>

참고사이트


profile
어려운 문제에 대해 고민하고 분석하는 과정을 좋아합니다.

0개의 댓글