GitHub

[GitHub] 깃허브 협업

simonpark817 2024. 5. 30. 11:26

[깃허브 협업]

  • 팀 프로젝트를 진행할 때 다수의 인원이 하나의 깃허브 리포지터리에서 여러개의 브랜치를 사용하여 개발을 하는 경우가 많다.
  • 각 브랜치를 사용해서 개발을 했을 때, 결국 main 브랜치의 각자의 작업 분량을 병합(merge 또는 rebase)하는 과정이 필수적으로 포함된다.
  • 아래 소개할 깃허브 협업 방법은 글쓴이의 경험을 토대로 작성된 순서일 뿐이지 무조건적인 정답이 아니라는 것은 참고 부탁드립니다.

 

[개발환경(git bash, Intellij 등)에서 작업할 때]

  1. git pull origin main (작업 시작할 때 마다 main 브랜치에서 실행)
  2. git checkout -b '브랜치 명' (브랜치 생성 후 이동)
  3. 개인 작업 시작
  4. git add .
  5. git commit -m "커밋 메시지"
  6. git pull origin main --rebase (병합하기 전 업데이트된 main을 내 브랜치에 가져오기)
  7. 충돌난 파일이 있다면 내용 정리 (없다면 패스)
  8. git push origin '브랜치 명' (개인 브랜치를 push함으로써 Pull Request 생성)

 

[깃허브(GitHub)에서 작업할 때]

  • 각 개인의 브랜치에서 작업을 완료하고 push했을 때, 깃허브 홈페이지에서 Pull Request(PR)을 생성해야 한다.
  1. 팀 프로젝트를 진행하는 리포지터리 주소로 진입
  2. 상단 메뉴 중 Pull Request 메뉴 클릭 후 'create pull request' 하기
  3. 본인이 작업한 브랜치를 선택
  4. PR을 생성했다면 나머지 팀원들의 승인을 기다리기
  5. PR 승인을 요청한 팀원을 제외한 나머지 팀원들은 Pull Request 메뉴 클릭 후 작업 완료한 팀원의 Request로 들어가서 Files changed 메뉴를 클릭하여 수정 또는 추가된 코드를 확인
  6. 확인을 마치고 병합을 승인하겠다 하면 Approve를, 그렇지 않으면 Request changes를 통한 반려
  7. 일정 인원의 팀원들이 수정된 코드를 승인했다면 'Squsah and merge' 버튼을 통해 main에 병합
  8. 병합이 완료되면 작업한 브랜치는 깃허브에서 가급적 삭제
  • 여기까지 완료되면 다시 개인 작업을 위해 '개발환경에서 작업할 때'로 이동하여 순서대로 진행하면 된다.

PR 생성하기

 

PR 승인하기

 

브랜치 삭제하기

 

[개발환경에서 브랜치 삭제 방법]

  • 병합을 마치고 깃허브에서는 브랜치를 삭제하는 것이 좋다.
  • 그렇지만 깃허브에서만 각자 작업했던 브랜치가 사라지는 것이지 다시 개발환경으로 돌아가면 개인이 작업한 브랜치는 남아있다.
  • 개발환경에서도 완전히 브랜치를 삭제하고 싶다면 아래의 명령어를 순서대로 입력하면 된다.
  1. git checkout main (메인 브랜치로 이동)
  2. git branch --all (모든 브랜치 확인)
  3. git branch -D '브랜치 명' (개인이 작업한 브랜치 삭제)
  4. git fetch --prune (삭제한 브랜치 로그 정리)
반응형