협업 — Pull Request 와 코드 리뷰
팀에서는 아무도 main 에 직접 커밋하지 않습니다. 브랜치 → push → PR → 리뷰 → 병합. 모든 소프트웨어 팀이 이 흐름으로 일합니다.
학습 목표
- 브랜치 → PR → 리뷰 → 병합 흐름을 돌릴 수 있다
- 리뷰하기 좋은 Pull Request 를 쓸 수 있다
- 남의 프로젝트에 기여하는 fork 흐름을 안다
팀에서는 main 브랜치에 직접 커밋하지 않습니다. 브랜치를 만들어 작업하고, 원격에 올린 뒤, Pull Request(PR)를 열어 "이 변경을 합쳐 달라"고 요청합니다. 리뷰어가 보고 의견을 남기고, 통과하면 병합됩니다. GitHub·GitLab 모두 같은 흐름이며, 여러분이 들어갈 거의 모든 회사가 이렇게 일합니다.
PR 은 코드를 검사받는 자리가 아니라 의도를 공유하는 자리입니다. 제목에 무엇을 했는지, 본문에 왜 필요한지와 어떻게 확인했는지를 적으면 리뷰가 몇 배로 빨라집니다. 그리고 PR 은 작을수록 좋습니다. 300줄이 넘어가면 리뷰어는 꼼꼼히 보지 못하고 그냥 승인하게 됩니다.
리뷰 의견을 받으면 그 브랜치에 커밋을 더 얹고 다시 push 하면 PR 이 자동으로 갱신됩니다. 남의 공개 저장소에 기여할 때는 그 저장소를 내 계정으로 fork 한 뒤, 내 fork 에서 브랜치를 만들어 원본 저장소로 PR 을 보냅니다. gh 명령(GitHub CLI)을 쓰면 터미널에서 나가지 않고 PR 을 만들고 목록을 보고 받아 볼 수 있습니다.
이 단계에서 익히는 명령어
눈으로 읽지 말고 터미널에 직접 쳐 보세요. 손이 기억해야 실무에서 나옵니다.
git switch -c fix/session-expiry- 작업할 브랜치를 엽니다. 이름은 무슨 일인지 알 수 있게 짓습니다.
git push -u origin fix/session-expiry- 브랜치를 원격에 올려 PR 을 열 수 있게 합니다.
gh pr create --fill- 터미널에서 PR 을 만듭니다. 제목과 본문을 커밋 내용으로 채웁니다.
gh pr checkout <number>- 남의 PR 을 내 컴퓨터로 받아 직접 돌려 본 뒤 승인합니다.