새소식

300x250
AI/Gemini

[gemini 활용기] - Github PR 리뷰 AI 자동화 (PullRequest 소스검토 Automation with Gemini Code Assist)

  • -
728x90

 

안녕하세요! 갓대희 입니다. :- )

 

오늘은 요즘 핫한 gemini cli를 설치해서 사용해보고,  vscode나 cursor에 "Gemini Code Assist"를 추가하여 사용해 보고 있다. 

현재까지는 Claude Code와 Gemini CLI를 비교했을때 gemini가 빨리 따라 오려고 하고 있지만, 후발주자로써 달리는 느낌을 개인적으로는 받고 있다. 

 

어떻게든 gemini를 사용해보려고 하는데(이 사용량을 많이 풀어줄때 많이 사용 해보고 싶은 마음),

다방면으로 찾아보던 중 PR 리뷰어로써 Gemini Code Assist를 사용하면 좋다고 느끼게 되었다. 

 

단 몇번의 클릭으로 소스 검토(pull request 검토)를 자동으로 해주게 된다. 

 

오늘의 목표 : PR 리뷰 자동화(소스 검토 자동화)를 Gemini Code Assist와 함께 해보자.
Google의 Gemini Code Assist를 통하면 3분 정도의 설정으로, 그리고 무료로 AI가 내 코드를 전문가 수준으로 리뷰해줄 수 있다.

 

왜 PR 자동화를 gemini로 하게 되었나

코드 리뷰는 모든 개발팀의 숙명이다. 하지만 스타트업이나 소규모 팀에서는 이 시간조차 부담스럽다. 리뷰할 사람도 부족하고, 일정은 빠듯하고, 그렇다고 품질을 포기할 수도 없는 상황이 일반적이다.

 

나도 개인 프로젝트를 하면서 이 문제를 절실히 느낀다.

혼자 개발하다 보니 내가 짠 코드를 객관적으로 봐줄 사람이 없어서, 품질 문제는 손을 놓기가 일상이다.

 

그래서 나는 n8n과 ChatGPT를 연동해서 웹훅으로 PR 리뷰를 자동화하여 사용중이다.

( github action등으로 pr리뷰 가능 하지만, 난 n8n 자동화 공부와, n8n으로 했을때 내 마음대로 커스터 마이징이 가능하다는 장점으로 사용하고 있으니, 구지 어렵게 돌아간다는 오해는 말아주세요! ㅎㅎ ) 

 

그런데 이때 이 자동화 플로우에서는 일부 비용이 발생하는데,

Gemini Code Assist는 개인 개발자들에게 무료로 PR리뷰가 가능하도록 풀어주었다.

지금이닷............무료일때 한번 해보자.

 

설치 방법

복잡한 웹훅 설정이나 API 키 발급 같은 건 필요 없다. 그냥 GitHub에서 앱 설치하고 계정 연동만 하면 끝이다.

  1. GitHub Marketplace에서 'Gemini Code Assist' 검색 후 설치
  2. 개인 Gmail 계정으로 로그인 (Workspace 계정은 유료)
  3. 원하는 리포지토리 선택 및 권한 부여
  4. Google 서비스 약관 동의
  5. 5분 후부터 모든 PR에 자동 리뷰 시작
첫 삽질 주의보
처음에 회사 Workspace 계정으로 설정하려다가 "계정이 부적격하다"는 메시지를 봤다. 무료 버전은 개인 Gmail 계정만 지원한다. 계정 타입 꼭 확인하자! 

1. GitHub Marketplace에서 'Gemini Code Assist' 검색 후 설치 

 - 또는 링크 이동 : https://github.com/marketplace/gemini-code-assist 

 

Gemini Code Assist - GitHub Marketplace

Bring the power of Gemini to the pull request process

github.com

 

2~3. 로그인 후 가장 하단으로 이동 / 원하는 리포지토리 선택 및 권한 부여

 - 가격은 무료 라고 되어 있다.  나의 경우는 이미 설치됨

 - 이후 단계는 쭉쭉 넘어 가면 된다.

  - 계속 쭉쭉 넘어가보자.

 - 설치/연동 완료. ( Settings > Github Apps 확인 )

 

 

 - 공식 문서에 따면 5분뒤부터 리뷰 가능하다고 하니 기다렸다가 시작해보자. 

 

사용 방법

설치만 하면 이제 모든 PR에서 Gemini가 열일할 준비가 끝났다. 코드를 푸시하는 순간부터 Gemini 리뷰어가 달라붙어서 분석을 시작한다.

🔄 워크플로우 예시

  1. PR 생성 즉시 자동 분석: 변경 내용 요약부터 잠재적 문제점까지 5분 내 완료
  2. 코드 리뷰: 버그, 성능, 보안, 스타일 가이드까지 종합 검토
  3. 인터랙티브 피드백: /gemini 태그로 언제든 추가 질문 가능
  4. 우선순위 분류: Critical, High, Medium, Low로 수정 우선순위 제시
  5. 즉시 적용 가능한 제안: 구체적인 코드 수정안과 개선 방향 제공

 

ex) (pr날리기 전 / 이미 열려있는 pr에서 시도) 공홈에 써있는 문법을 통해 이미 요청된 pr에 대해 수동으로 리뷰도 요청 해보겠다. 

 

 - comment기능을 통해 요청해볼 생각이다.  @gemini-code-asssis 라고 호출하라고 되어있는데 그냥 @gemini review ~ 라고 호출해도 일단 동작 되며, 이미 열려 있던 pull request 에서 수동으로 호출하여 리뷰 요청을 해보았다.  (조금 이미지가 길어질 수 있지만 전체 내용 캡쳐 )

 - gemini 리뷰 결과

ex) 보안 이슈 찾아내고, 개선안 제공

 - email 로도 보내준다. 

 

 

ex) 실제 오류? 검출한 내역 (이중으로 화면을 보여주는 부분)

 - 생각보다 잘 찾아 내고 제안 해준다. 

 

 

************************** 참고 Start ****************************** 

 - 잠깐 내가 설정해둔 커스텀 PR 리뷰 봇과 (n8n + gpt 를 통해 자동 리뷰 하는 기능 테스트를 진행했었다.) 비교 해보고 넘어 가자. 

   참고 사항 이니 바쁜 분들은 패스 패스 패스   노룩 패스 !!! 

( gpt 4.0 mini 모델이어서 성능이 좋지 않지만 퀄리티 보다는 단순히 재미로 보자 )

ex) 내 커스텀 봇(n8n + gpt 4.0 mini) : 전체리뷰

 - 내가 간단하게 5가지 관점에 대해 프롬프팅을 작성하여 전체 리뷰 요청한 결과.

 - 이또한 gemini와는 전혀 다른 방향이지만 코드 퀄리티면에서 도움되는 내용이 많았다. (성능 낮은 gpt 4.0 mini 버전임에도 불구하고 )

 - 나는 메일 대신 slack 알림 설정을 해뒀다. ( + 구글 sheet에도 저장하여 이후 데이터를 어떻게 활용할지 고민 중.. 이다. )

 

ex) 내 커스텀 봇(n8n + gpt 4.0 mini) : line by line 리뷰

( 나도 프롬프팅을 좀 개선해야겠다. p1 ~ p4등급으로 나눠 p1, p2 등급만 라인별 코멘트를 달았는데, 

gemini나 claude처럼 색상으로 중요도 표시와 우선순위를 별도로 표기 해 주면 좋을 것 같다. )

************************** 참고 End ****************************** 

 
ex) 그럼 이제 수동호출이 아닌 실제 pr요청을 통해 Gemini Code Assist의 자동 리뷰가 동작하는지 확인해 보자.
 - commit & push : 소스 리팩토링 작업에 대한 pull request 를 날려 보았다.
 
 - Gemini Code Assist가 잘 동작 하는것을 볼 수 있다. 일단 먼저 어떤 작업을 할지 먼저 간단하게 설명 하는 모습니다.

 

 - 실제 리뷰 내용은 하기 이미지 참고.  그리고 이 테스트 시나리오는 꽤나 의미가 있다.

ex) 바이브 코딩을 통해 리팩토링 요청을 하였고, claude code 가 작업한 내용을 gemini 가 리뷰하는 모습이다. 

즉, 바이브 코딩을 하더라도 또다른 ai의(나또한 참여하여) 리뷰를 받고 다시 개선 > 리뷰등의 workflow도 설계할 수 있을 것 같다. 

 
이 정도 퀄리티의 리뷰라면 안쓰는게 손해 아닐까? 

 

팀 규칙 반영해보기.

기본 리뷰만으로도 충분히 강력하지만, 팀이나 프로젝트에 특화된 규칙을 적용할 수 있다는 게 Gemini의 또 다른 무기라고 한다.

.gemini/config.yaml

code_review:
  comment_severity_threshold: "MEDIUM"
  disable: false
ignore_patterns:
  - "*.test.js"
  - "dist/**"
  - "node_modules/**"
  - "*.config.js"
have_fun: true  # PR 요약에 재미 요소 추가

.gemini/styleguide.md

# 우리 팀의 코드 리뷰 가이드라인

## React 컴포넌트 규칙
- 함수형 컴포넌트만 사용
- PropTypes 반드시 정의
- 컴포넌트명은 PascalCase

## 성능 최적화
- useMemo, useCallback 적극 활용
- 불필요한 리렌더링 방지
- lazy loading 고려

## 접근성 및 SEO
- 의미있는 alt 속성 필수
- semantic HTML 태그 사용
- ARIA 레이블 적절히 활용

이렇게 설정하면 Gemini가 우리 팀의 코딩 컨벤션을 학습해서 맞춤형 리뷰를 해준다.

신입 개발자가 들어와도 자동으로 팀 규칙을 학습할 수 있는 셈이다.

 

/gemini 와 대화하기

PR 댓글에서 `/gemini` 태그를 사용하면 실시간으로 질문하고 답변받을 수 있다.

// 실제 사용 예시들
/gemini review              # 현재 상태로 재검토
/gemini summary             # PR 요약 다시 생성
/gemini 이 컴포넌트 성능을 더 최적화할 방법 있을까?
/gemini 접근성 측면에서 개선할 점은?
/gemini 이 코드가 메모리 누수를 일으킬 가능성이 있나?

ex) /summary

 

 

실무 단계에서의 Q & A

물론 완벽한 도구는 없다. 몇 주 사용하면서 발견한 한계점들과 그 대응 방법들이다.

Q: 복잡한 비즈니스 로직도 제대로 이해하나?
A: 단일 함수나 컴포넌트는 잘 보지만, 여러 파일에 걸친 복잡한 로직은 놓치는 경우가 있다. 대응: 중요한 로직은 주석으로 컨텍스트를 충분히 설명하자.
Q: 리뷰 속도가 가끔 느려지지 않나?
A: 평소 5분 내외지만, 트래픽이 몰리는 시간대에는 10-15분 걸릴 때도 있다. 대응: 급한 PR은 사람의 리뷰와 병행하자.
Q: 한국어 주석이나 변수명은 어떻게 처리하나?
A: 영어보다는 정확도가 떨어진다. 대응: 핵심 로직은 영어 주석을 병행하거나, 리뷰 후 추가 질문으로 보완하자.
 
 

Gemini를 써본 후의 특징 정리

  • 진입 장벽 제거 : 복잡한 설정 없이 3분만에 자동 리뷰 시스템을 구축할 수 있다
  • 비용 혁명 : 현재 기준이겠지만 발생 비용이 0원이라는 점.
  • 학습 효과 : /gemini 대화 또는 코드 리뷰를 통해 성장 가능하기도 하다.
  • 워크플로우 통합 : 별도 플랫폼 없이 GitHub 내에서 모든 리뷰 프로세스 가능.
  • 팀 규칙 자동화 : 신입 개발자도 자연스럽게 팀 컨벤션을 학습하는 환경 조성이 가능하다.
  • 보조 도구의 한계 : 다만... AI를 맹신하지 말고 중요한 부분은 사람의 검토를 병행해야 한다.

 

안쓰면 손해다

도입을 권장하는 경우

  • 개인 프로젝트 : 혼자 개발하면서 객관적 피드백이 필요한 경우
  • 소규모 스타트업 : 리뷰 리소스는 부족하지만 코드 품질을 포기할 수 없는 팀
  • 학습 목적 : 코드 리뷰 문화를 배우고 싶은 주니어 개발자
  • 레거시 프로젝트 : 기존 코드의 점진적 품질 개선이 필요한 경우
  • 오픈소스 프로젝트 : 다양한 컨트리뷰터들의 코드 품질 통일이 필요한 경우

특히 개인 개발자나 소규모 팀이라면 당장 오늘 도입해도 손해 볼 게 없다. 설정에 3분, 첫 리뷰까지 5분이면 된다. 이 정도 투자로 개발 워크플로우가 완전히 바뀐다면 안 할 이유가 없다.

💡 마지막 실전 팁
PR을 작은 단위로 자주 올리면 리뷰 품질이 더 좋아진다. 한 번에 20개 파일을 수정하면 Gemini도 핵심을 놓칠 수 있다. 기능별로 나눠서 PR을 올리는 습관을 들이자!

 

n8n으로 커스텀 워크플로우를 구축했던 경험도 값졌지만, 일반적인 용도라면 Gemini Code Assist가 효율적이다.
 - Gemini Code Assist처럼 무료로 좋은 경험을 제공해 주는 서비스들에 Rock In이 되는 순간 언젠가 돈을 요구한다.
 - 그리고 반대로 n8n같은 tool을 개발자들은 잘쓰는게 중요해질 것 같다. n8n을 활용하면 원하는대로 리뷰 양식도 변경 가능하고, 모델도 비용 판단하게 가치가 있다고 생각되면 고급 AI model로 변경도 바로바로 가능 하다. 또한 다양한 알림 채널들과의 연동도 얼마든지 선택할 수 있어서, customizing이 무한하다.) 

 

다만 현시점, 무료의 관점에서 복잡한 설정도 필요 없고, 비용도 안 들고, 품질도 뛰어나다.

 

다음에는 다른 AI 코드 리뷰 도구들과도 비교해볼 예정이다. 각각의 특성을 파악해서 프로젝트 성격에 맞는 최적의 조합을 찾아보는 것도 재미있을 것 같다.

결론 : 추천!
3~4 분 설정으로드 리뷰를 자동으로 받을 수 있다는 건, 개발 생태계 전체의 패러다임이 바뀌어 가고 있는 것 같다. 

📚 참고 자료

 

300x250
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.

💡 AI 관련 질문이 있나요? 눌러보세요!