Post

GitHub Pull Request란

GitHub Pull Request란

GitHub Pull Request란? 협업의 핵심, 코드 리뷰의 시작

Image

오픈소스든 회사 프로젝트든 협업 개발에서 가장 자주 사용되는 기능 중 하나가 Pull Request다. 하지만 초보 개발자에게는 개념도 헷갈리고 버튼도 많아 막막하게 느껴질 수 있다.

이 글에서는 Pull Request(이하 PR)의 개념, 작성 방법, 협업에서의 역할까지 핵심만 정리한다.


Pull Request란?

Pull Request는 말 그대로 “내가 만든 변경사항을 기존 저장소로 가져와 달라(pull)”는 요청이다.

쉽게 말하면:

  • A 브랜치에서 기능을 개발했다
  • 이제 이 코드를 main 브랜치에 합치고 싶다
  • 그 전에 코드 리뷰, 테스트 등을 요청하는 절차가 필요하다

이걸 GitHub에서는 “Pull Request(PR)”라고 부른다.

핵심 개념: 내 코드 → 누군가의 브랜치로 병합해도 될지 요청하는 절차


PR 흐름

  1. 브랜치 생성 feature/login 같은 새 브랜치에서 작업한다.

  2. 작업 후 커밋 기능을 구현하고 커밋을 남긴다.

  3. Push 원격 저장소에 브랜치를 푸시한다.

  4. Pull Request 생성 GitHub에서 해당 브랜치를 기준으로 PR을 만든다.

  5. 리뷰 / 피드백 반영

  6. Merge (병합) 리뷰가 끝나면 main 브랜치 등으로 병합한다.


실제 사용 예

1
2
3
4
5
6
7
8
9
# 브랜치 생성
git checkout -b feature/login

# 작업 후 커밋
git add .
git commit -m "Add login form UI"

# 원격에 푸시
git push origin feature/login

그 후 GitHub 웹사이트로 가면 Compare & pull request 버튼이 뜨고, 클릭하면 PR 화면으로 이동한다.


PR 작성 시 좋은 습관

  • 제목은 요약, 본문은 상세 예: 제목: 회원가입 폼 유효성 검사 추가 본문:

    1
    2
    3
    
    - 이메일, 비밀번호, 비밀번호 확인 필드에 유효성 검사 추가
    - 잘못된 입력 시 빨간색 테두리 표시
    - useForm 훅 사용
    
  • 스크린샷 or 영상 첨부 (UI/UX 변경 시)

  • 관련 이슈 번호 연결 Closes #13 → 머지되면 자동으로 이슈 닫힘


PR의 이점

장점설명
코드 리뷰동료에게 코드 리뷰를 요청 가능
변경 이력 추적어떤 브랜치에서 어떤 기능이 추가됐는지 명확
자동 테스트 연동PR 시점에 CI 테스트 자동 실행 가능
협업 표준화팀 전체가 동일한 절차로 병합

PR vs Push 차이

항목PushPull Request
목적내 로컬 변경을 원격에 반영변경사항 병합 요청
검토 과정없음있음 (리뷰, 승인)
협업 적합도낮음높음

PR 없이 바로 main에 push 하는 것은 팀 협업에서는 금지 수준의 실수다.


결론

GitHub에서의 Pull Request는 단순한 병합 도구가 아니다. 협업의 시작점, 코드 품질의 보증 절차, 문서로 남는 커뮤니케이션 기록이다.

This post is licensed under CC BY 4.0 by the author.