복잡한뇌구조마냥

[Git] 협업을 위한 커밋, 브랜치, PR 작성 규칙 정리 본문

공통/개발환경

[Git] 협업을 위한 커밋, 브랜치, PR 작성 규칙 정리

지금해냥 2025. 7. 6. 11:36

✍️ 협업을 위한 Git 커밋, 브랜치, PR 네이밍 규칙 정리

스터디 또는 팀 프로젝트에서 효율적인 협업을 위해 커밋 메시지, 브랜치 명명, PR 작성 방식에 대해 아래와 같이 정리했습니다.
정해진 규칙을 바탕으로 일관성 있게 관리하면 커뮤니케이션 비용도 줄고, 나중에 변경 내역을 추적하기도 훨씬 수월해집니다.

 


📌 1. 커밋 메시지 규칙 (Conventional Commits)

커밋 메시지는 다음과 같은 형식을 따릅니다:

<type>(optional scope): <description> [optional tag]

🗒️ 대표적인 커밋 prefix 정리표

타입 (type) 의미 예시
feat: 새로운 기능 추가 feat: 사용자 로그인 기능 구현
fix: 버그 수정 fix: 계산 오류로 인한 결과값 이상 수정
refactor: 리팩토링 (동작은 동일, 구조만 개선) refactor: 반복문 구조 개선
style: 코드 포맷팅, 세미콜론 누락 등 비기능성 변경 style: 들여쓰기 정리 및 공백 정리
docs: 문서 수정 (README 등) docs: 문제 풀이 설명 추가
test: 테스트 코드 추가/수정 test: 기능 테스트 케이스 추가
chore: 빌드 설정, 패키지 설치 등 잡일성 작업 chore: .gitignore에 log 파일 추가
perf: 성능 개선 perf: 루프 최적화로 실행 속도 개선
ci: CI/CD 설정 수정 ci: GitHub Actions 수정
build: 빌드 시스템 변경 build: gradle 버전 업데이트
revert: 이전 커밋 되돌리기 revert: 사용자 로그인 기능 롤백

🔖 자주 사용하는 타입

타입 설명 예시
feat 새로운 기능/문제 풀이 feat: 신규 아이디 추천 문제 풀이
fix 버그 수정 fix: 3진법 뒤집기 결과 계산 오류 수정
refactor 리팩토링 (기능 동일, 구조 변경) refactor: 기능 개발 문제 반복문 개선
docs 문서 작성 및 수정 docs: README 정리
test 테스트 코드 추가 test: 예외 케이스 추가
chore 설정, 빌드, 기타 잡일 chore: .gitignore 업데이트
 

✨ 접미어 활용 예시

접미어 용도 예시
#이슈번호 관련 이슈 feat: 기능 개발 문제 풀이 #3
@작성자 작성자 표기 fix: 오류 수정 @yoepee
[skip ci] CI 건너뛰기 docs: 오타 수정 [skip ci]
[WIP] 작업 중 feat: 로그인 기능 구현 중 [WIP]
 

 

메세지 활용 예시

feat: 신규 아이디 추천 문제 풀이 추가 #3
fix: 3진법 변환 로직 오타 수정 @yoepee
refactor: 기능 개발 문제 while → for 변경 (by 희수)
docs: 문제 풀이 README 정리 [skip ci]
feat: 숫자와 영단어 문자열 풀이 완료 !중요

 

💬 팀 스터디 상황에 맞게 쓰는 팁

  • GitHub Issue/PR과 연동 중이면 #번호 사용 필수
  • 서로 작성자 구분이 필요하면 (by 이름) 또는 @이름 접미어 사용
  • CI/CD 설정 중이라면 docs, chore 커밋에는 [skip ci] 유용

🌿 2. 브랜치 네이밍 규칙

// 1안
<type>/<식별자>-<작성자>
// 2안
<type>/<short-description>

💡 브랜치 이름 작성 규칙

  • 소문자, - 또는 / 사용
  • 공백은 금지
  • 가능하면 한눈에 목적이 드러나게 작성
  • 이슈 연동 시: feature/#123-login-form

예시

feature/signup-form
fix/navbar-overlap
refactor/user-auth-hook
docs/api-usage
release/2025-07-07

🧩 커스터마이징 참고

feat/<문제번호>-<작성자>
refactor/<문제번호>-<작성자>
docs/week<주차>-summary

예시

브랜치 이름 설명
feat/42586-yoepee 기능 개발 문제 풀이 (문제번호 + 작성자)
fix/160586- yoepee 자판 문제 로직 수정
refactor/72410- yoepee 신규 아이디 추천 리팩토링
docs/week01- yoepee 1주차 회고 정리

⭐ 추천 Prefix

타입 의미
feat/ 새로운 문제 풀이
fix/ 버그 수정
refactor/ 구조 개선
docs/ 문서 작업
test/ 테스트 추가
chore/ 환경 설정 등 기타 작업
 

 


🚀 3. PR 작성 템플릿

## 📌 제목 (Title)
[타입] 문제/기능 이름 - 작성자

## 🔍 변경 내용 (What)
- 무엇을 구현했는지 요약
- 문제 풀이 방식, 적용한 알고리즘 등 핵심 아이디어 정리

## 💡 이유 / 의도 (Why)
- 왜 이런 방식으로 풀었는지
- 어떤 고민을 했는지, 선택한 이유가 있다면

## 📝 기타 코멘트 (Optional)
- 리뷰어에게 확인받고 싶은 부분
- 리팩토링 필요 여부, 참고 링크 등

## ✅ 체크리스트 (Optional)
- [x] 문제 설명 정리함
- [x] 코드 실행 및 테스트 완료
- [ ] 리팩토링 가능성 검토 중
 

PR 제목 예시

제목설명
[feat] 3진법 뒤집기 풀이 - 김동엽 기능 추가
[fix] 자판 문제 오류 수정 - 김동엽 버그 수정
[refactor] 기능 개발 반복문 개선 - 김동엽 구조 개선
 

🧠 마무리 Tip

  • Git은 기록 그 자체입니다. 명확하게 남길수록 팀 전체의 생산성이 올라갑니다.
  • PR은 코드 리뷰를 위한 문서입니다. “무엇을, 왜 했는지”만 잘 써도 팀원 입장에서 엄청난 도움이 됩니다.
  • 개인 스터디라도 이 습관을 들이면 나중에 팀 프로젝트에서도 매우 유리합니다.
LIST