Chapter 09
Pull Request & 팀 협업
실제 팀에서 사용하는 협업 방식! PR로 코드 리뷰를 받고, 이슈를 관리하고, Fork로 오픈소스에 기여하는 방법을 배웁니다.
🎯 이 챕터를 마치면
- Pull Request의 목적과 흐름을 이해한다
- GitHub에서 PR을 직접 생성하고 리뷰할 수 있다
- 이슈(Issue)로 작업을 관리할 수 있다
- Fork 워크플로우로 오픈소스에 기여할 수 있다
- 팀 협업 실습을 완료한다
1. Pull Request란?
Pull Request(PR)는 내가 만든 브랜치의 변경사항을 다른 브랜치에 병합(merge)해달라고 요청하는 것입니다. 팀원들의 코드 리뷰를 받는 핵심 협업 메커니즘입니다.
Pull Request 전체 흐름
1️⃣
브랜치 생성
feature/login
→
2️⃣
개발 + 커밋
push to GitHub
→
3️⃣
PR 생성
GitHub UI에서
→
4️⃣
코드 리뷰
팀원 리뷰 + 수정
→
5️⃣
Merge!
main에 병합
2. PR 실습
1
새 브랜치 생성 및 작업 후 push
Git Bash
$ git switch -c feature/signup
$ touch signup.html
$ git add .
$ git commit -m "feat: 회원가입 페이지 추가"
$ git push origin feature/signup
2
GitHub에서 PR 생성
GitHub 저장소 → "Compare & pull request" 버튼 클릭 → 제목, 설명 입력 → Create pull request
좋은 PR 설명에는: ① 무엇을 변경했는지 ② 왜 변경했는지 ③ 어떻게 테스트했는지를 포함하세요.
3
코드 리뷰 & Merge
Files changed 탭에서 코드 확인 → 리뷰 코멘트 추가 → 승인 후 "Merge pull request" 클릭
3. 이슈(Issue) 관리
이슈는 버그 리포트, 기능 요청, 작업 관리를 위한 GitHub의 협업 도구입니다.
이슈 → PR → Merge 연결 워크플로우
🐛
이슈 생성
"#42 로그인 버그"
→
🌿
브랜치 생성
fix/42-login-bug
→
🔃
PR 생성
"Closes #42" 입력
→
✅
Merge 시 이슈 자동 닫힘!
PR 설명에 Closes #42, Fixes #42, Resolves #42를 입력하면 PR이
Merge될 때 해당 이슈가 자동으로 닫힙니다.
4. Fork 워크플로우
오픈소스 프로젝트나 직접 Write 권한이 없는 저장소에 기여할 때는 Fork 방식을 사용합니다.
Fork 협업 흐름
🌳
원본 저장소
원작자 repo
직접 수정 불가
직접 수정 불가
🍴
내 Fork
내 GitHub에 복사
마음대로 수정 OK
마음대로 수정 OK
💻
내 로컬
clone해서 작업
원본 Fork →
내 Fork clone →
로컬 작업 →
내 Fork push →
원본에 PR 생성!
Git Bash — Fork 후 원본 upstream 연결
# Fork한 내 저장소 clone
$ git clone https://github.com/내이름/저장소.git
# 원본 저장소를 upstream으로 추가
$ git remote add upstream https://github.com/원작자/저장소.git
# 원본 최신 상태 반영
$ git fetch upstream
$ git merge upstream/main
# 내 브랜치에서 작업 후 내 Fork에 push
$ git push origin feature/my-contribution
# → GitHub에서 원본 저장소로 PR 생성!
🎉
모든 챕터를 완료했습니다!
Git 기초부터 브랜치 전략, GitHub 협업, Pull Request까지 — 실무에서 바로 쓸 수 있는 Git & GitHub 핵심을 모두 배웠습니다.
🌱
버전 관리
commit, log, status
🌿
브랜치 전략
branch, merge
☁️
원격 협업
push, pull, PR
✅ 이해도 체크
PR이 왜 필요한지 (코드 리뷰, 협업) 설명할 수 있다
직접 PR을 생성하고 Merge해봤다
이슈와 PR을 연결하는 방법을 안다
Fork 워크플로우가 언제 사용되는지 이해한다
팀원과 실제 협업 실습을 완료했다
📌 이 챕터 핵심
git push origin 브랜치명
PR용 브랜치 push
Closes #이슈번호
PR 설명에 적으면 merge 시 이슈 자동 닫힘
git remote add upstream URL
Fork 후 원본 저장소 연결
git fetch upstream
원본 최신 상태 가져오기