본문 바로가기

Git

[Git] Git을 활용한 코드 리뷰 프로세스

728x90
반응형

현재 진행 중인 프로젝트에서는 깃 pr을 통한 코드리뷰를 진행하고 있다. 
또한 많은 회사들이 Git을 통한 코드리뷰를 하는 것으로 알고 있어서
Git을 활용한 코드리뷰에 대해 포스팅해보려고 한다. 

프로젝트를 진행하는 각 팀, 그룹 별로 알맞은 전략을 짜는 것이 가장 중요하다고 생각한다. 
오늘 포스팅은 "이렇게 진행하는 방법도 있다." 정도로 참고하면 좋을 것 같다.

 

리뷰 프로세스를 살펴보자!


1. Pull Request(PR) 활용하기

Git을 활용한 코드 리뷰에서 가장 핵심적인 요소는 Pull Request(PR)이다. PR은 개발자가 특정 기능이나 버그 수정을 완료한 후, 이를 메인 브랜치에 병합하기 전에 팀원들의 검토를 받기 위해 사용하는 기능이다. PR을 통해 코드 변경 사항을 한눈에 파악하고, 리뷰어들이 수정이 필요한 부분에 대해 구체적으로 피드백을 줄 수 있다.

 

  • 작은 단위의 PR을 생성한다. 변경 사항이 많을수록 리뷰어가 파악하기 어렵고, 피드백의 질도 떨어질 수 있다. 기능 단위로 작은 PR을 생성해 리뷰어가 변경 사항을 쉽게 이해할 수 있도록 한다.
  • 명확한 제목과 설명을 작성한다. PR 제목에는 작업의 핵심 내용을 간결하게 담고, 본문에서는 변경 이유와 주요 변경 사항, 검토가 필요한 부분을 상세히 기술한다. 이는 리뷰어의 시간을 절약하고, 더 나은 피드백을 받을 수 있게 해 준다.

2. 브랜치 전략 수립하기

효과적인 코드 리뷰를 위해서는 브랜치 전략이 중요하다. 일반적으로 Git Flow나 GitHub Flow와 같은 전략을 사용해 브랜치를 체계적으로 관리한다. 개발 중인 기능(feature) 브랜치에서 작업을 완료한 후 PR을 통해 메인 브랜치로 병합한다.

 

  • 기능별 브랜치를 분리한다. 모든 기능을 하나의 브랜치에서 작업하는 것은 리뷰어에게 혼란을 줄 수 있다. 기능 단위로 브랜치를 분리해 PR이 특정 기능에만 집중될 수 있도록 한다.
  • 리뷰 전 브랜치 동기화를 철저히 한다. PR을 생성하기 전에 메인 브랜치와 기능 브랜치를 동기화해 병합 충돌을 최소화한다. 이는 리뷰어가 코드 변경 사항에만 집중할 수 있게 한다.

3. 자동화 도구 활용하기

코드 리뷰 프로세스에서 자동화 도구를 활용하면, 품질을 유지하면서도 시간을 절약할 수 있다. 예를 들어, Git Hooks, CI/CD 파이프라인 등을 통해 코드 스타일 검사, 테스트 자동화를 실행할 수 있다.

 

  • Linting 도구를 사용해 코드 스타일을 자동으로 검사하고, 일관성을 유지한다. PR 생성 시 자동으로 실행되도록 설정해 리뷰어가 스타일 문제에 집중하지 않도록 한다.
  • 자동화된 테스트를 설정해 모든 PR에서 자동으로 테스트가 실행되도록 한다. 테스트 결과를 기반으로 리뷰어는 코드가 기능적으로 문제없는지 확인할 수 있다.

4. 리뷰어와 커뮤니케이션 강화하기

코드 리뷰는 단순히 코드를 확인하는 것이 아니라, 팀원 간의 커뮤니케이션을 강화하는 과정이다. 리뷰어와의 원활한 소통은 리뷰의 질을 높이고, 리뷰이의 성장에도 도움을 준다.

 

  • 명확하고 건설적인 피드백을 제공한다. 피드백은 구체적이고 명확하게 전달하며, 단순한 비판보다는 개선 방향을 제시하는 것이 중요하다.
  • 리뷰어와 리뷰이 간의 대화를 적극 장려한다. 필요하다면 직접적인 대화를 통해 코드의 의도를 설명하거나, 피드백에 대해 논의할 수 있도록 한다.

5. 리뷰 후 개선 작업 추적하기

코드 리뷰가 완료되면, 리뷰어의 피드백을 반영해 코드를 개선하는 작업이 필요하다. 이 과정에서 수정 사항이 적절히 반영되었는지 추적하고, 추가적인 검토가 필요한 경우 이를 재요청한다.

 

  • PR 내에서 피드백 반영 상태를 표시한다. GitHub의 경우, 피드백에 따라 코드 변경 사항을 추가로 커밋하고, 이를 PR 내에서 바로 확인할 수 있다.
  • Merge 전 최종 검토를 철저히 한다. 모든 피드백이 반영된 후, 최종적으로 PR을 리뷰하고, 문제가 없을 시에만 메인 브랜치에 병합한다.

6. 지속적인 프로세스 개선

코드 리뷰 프로세스는 한 번 정해지면 끝나는 것이 아니라, 지속적으로 개선되어야 한다. 리뷰어와 리뷰이의 피드백을 바탕으로 더 나은 방법을 도입하고, 팀의 요구에 맞게 프로세스를 조정해 나가야 한다.

 

  • 리뷰 후 회고를 진행한다. 특정 프로젝트나 Sprint가 끝난 후 코드 리뷰 과정에서 발생한 문제점과 개선 사항을 논의한다.
  • 팀의 성숙도에 따라 프로세스를 조정한다. 팀의 경험이 쌓임에 따라 코드 리뷰 과정도 간소화하거나, 새로운 도구를 도입해 효율성을 높일 수 있다.

결론

Git을 활용한 코드 리뷰는 단순한 코드 검토를 넘어, 팀의 협업과 코드 품질을 높이는 중요한 과정이다. Pull Request를 효과적으로 사용하고, 자동화 도구를 적절히 활용하며, 리뷰어와의 원활한 소통을 통해 코드 리뷰 프로세스를 최적화할 수 있다. 지속적인 프로세스 개선을 통해 더 나은 개발 문화를 만들어 나가는 것이 중요하다.

728x90
반응형

'Git' 카테고리의 다른 글

[Git] 효과적인 Readme.md 파일 작성방법  (4) 2024.09.03
[Git] Git 명령어 마스터하기!  (0) 2024.08.29
[GitHub] IntelliJ에서 GitHub연동하기  (0) 2024.08.09