Graphite 사용 기록
최근 변경일:
개요
Graphite 사용 경험을 정리한다. Graphite는 Stacked diffs(Stacked PRs) 방식으로 개발 작업을 할 때, PR 관리 및 코드 리뷰 편의성 증진에 도움을 주는 서비스다.
2022년 9월, 팀에 실험적으로 도입하여 사용
도입 과정
- 인프콘 2022, 코드 리뷰의 또 다른 접근 방법: Pull Requests vs. Stacked Changes 영상을 통해 Graphite를 알게 되었다.
- 마침 팀 내에서 코드 리뷰 문화 개선하고자 하는 활동이 있었는데, 우리의 문제 해결에 도움이 되는 부분이 있는 도구라고 생각되어 팀에 소개했고 논의 끝에 실험적으로 사용해 보기로 했다.
결과
- 우리들의 필수 도구로 정착했다. 팀원들 모두 편리하다는 의견이다.
- 이전보다 PR의 변경 크기가 평균적으로 작게 유지되었고, PR들이 방치되는 시간도 줄고 방치되는 코드의 양도 줄었다. (Graphite는 코드 리뷰와 관련된 각종 통계 지표를 볼 수 있는 대시보드도 제공한다.)
느낀 점
- 처음 사용 시 학습 곡선이 조금 있는 편이다.
- PR의 크기를 작게 유지할수록 리뷰를 기다리는 PR이 쌓이기 마련이고, 연속된 PR들을 머지할 때의 귀찮음으로 PR을 잘게 쪼개는 것이 망설여지기도 하는데, Graphite가 단순 반복적인 귀찮은 일들을 알아서 잘 해준다. 덕분에 PR을 구성할 때 리뷰하기 좋게 구성하는 것에만 집중할 수 있다.
- 만약 앞으로 코드 리뷰는 활성화되어 있는데 이런 도구 없이 개발하게 되는 환경에 놓인다면 아주 아쉽고 계속 생각날 것 같다.
2025년, 오랜만에 다시 사용
계기
- 이전 직장 퇴사 후 거의 1년 만에 다시 사용하게 되었다. 혼자 작업할 때 필요하지 않다가 CodeRabbit의 리뷰 서비스를 이용하기 시작한 이후로 작업 흐름이 아주 살짝 끊기는 경우가 종종 생기면서 다시 사용을 시작했다.
느낀 점
- 여기저기 AI 없는 제품이 없는 시대답게 PR 생성 시 본문 내용을 작성해 주는 ‘Write for me’라는 기능을 제공하고 있는데, 1년 전보다 품질이 더 만족스럽다. 정말 정리를 잘 해준다.
- 별개로 Graphite도 Diamond라는 코드 리뷰 서비스를 내놓았다. CodeRabbit과 같이 사용하면 리뷰어가 2명이 되는 경험이 될 것 같아 사용해 보려고 했는데 개인 코드 저장소를 대상으로는 서비스를 제공하지 않고 있다.