Git

Git 강좌 06강 — 협업: Pull Request · .gitignore · 커밋 컨벤션

🎯 학습 목표

  • Pull Request 기반 협업 흐름을 이해한다.
  • .gitignore로 추적 제외 파일을 관리한다.
  • 일관된 커밋 메시지 컨벤션을 적용한다.

📖 개념 설명

실무에서는 main에 직접 push하지 않고, 브랜치에서 작업 후 Pull Request(PR)로 “이 변경을 합쳐 달라”고 요청합니다. 팀원이 코드를 리뷰하고 승인하면 병합됩니다. PR은 코드 품질을 지키는 관문이자 변경 이력의 문서가 됩니다.

.gitignore는 빌드 결과물, 의존성 폴더, 비밀 파일처럼 깃이 추적하면 안 되는 파일을 제외합니다. 처음 커밋 전에 설정하는 것이 중요합니다.

💻 실습 — PR 흐름

# 1) 작업 브랜치 생성·푸시
git switch -c feature/signup
# ... 작업 후 ...
git add . && git commit -m "회원가입 폼 추가"
git push -u origin feature/signup

# 2) PR 생성 (GitHub CLI)
gh pr create --title "회원가입 기능" --body "회원가입 폼과 검증 추가"

# 3) 리뷰·승인 후 병합 (웹 또는 CLI)
gh pr merge --squash

💻 .gitignore 예시

# .gitignore
node_modules/
build/
target/
*.log
.env            # 비밀번호/키 — 절대 커밋 금지
.DS_Store
.idea/
# 이미 추적 중인 파일을 .gitignore에 넣었다면 추적 해제 필요
git rm -r --cached node_modules
git commit -m ".gitignore 적용"

💻 커밋 컨벤션 (예: Conventional Commits)

feat: 회원가입 기능 추가
fix: 로그인 시 토큰 만료 오류 수정
docs: README에 설치 방법 추가
refactor: 결제 로직 함수 분리
test: 주문 서비스 단위 테스트 추가
chore: 의존성 버전 업데이트

⚠️ 주의사항

  • .env나 키 파일을 실수로 커밋했다면, 단순 삭제로는 이력에 남습니다. 즉시 키를 폐기·재발급하세요.
  • PR은 작게 유지하세요. 변경이 크면 리뷰가 어렵고 충돌도 늘어납니다.

💡 팁

  • GitHub의 gitignore 템플릿(언어별)을 시작점으로 쓰면 편합니다.
  • PR 설명에 “테스트 방법”을 넣으면 리뷰어가 직접 확인하기 쉽습니다.