목표
- 브랜치 접두사(Prefix) 기반 네이밍 규칙의 필요성과 효과 이해
- 협업 및 CI/CD 파이프라인에서 직관적인 브랜치 관리 전략 수립
기억하기
feature/는 신규 기능 개발(Feature) 작업을 명시하는 표준 접두사
- 슬래시(
/) 구분자는 VS Code, Sourcetree 등 GUI 도구에서 폴더 트리 구조로 렌더링
[작업자/작업종류/이슈티켓-작업내용] 구조를 활용하면 작업 주체와 목적을 한눈에 식별 가능
내용
- 브랜치 네이밍 접두사를 나누는 이유
- 작업 성격 즉시 식별: 기능 개발, 버그 수정, 문서 작업 등 커밋 히스토리 확인 전 작업 의도 파악 가능
- CI/CD 자동화 연동:
release/*, hotfix/* 등 패턴에 따라 테스트/빌드/배포 파이프라인 조건 분기 가능
- Git GUI 도구 정리: 계층형 트리 뷰를 지원하여 다수의 브랜치가 생성되어도 깔끔하게 그룹화
- 자주 쓰이는 브랜치 접두사 규칙
feature/: 새로운 기능 개발
bugfix/ 또는 fix/: 일반적인 버그 및 결함 수정
hotfix/: 운영 환경(Production)에서 긴급히 해결해야 하는 오류 패치
refactor/: 비즈니스 로직 변화 없이 코드 구조 개선, 최적화
chore/: 빌드 스크립트, 의존성 패키지 관리, 기타 단순 설정 변경
- 예시 코드 및 브랜치 생성 명령어
- 신규 기능 브랜치 생성 및 전환:
git checkout -b ckdtjs505/feature/SOOPKR-101-chat-packet-pipeline
- 긴급 핫픽스 브랜치 생성:
git checkout -b hotfix/SOOPKR-102-memory-leak-fix
- 특정 작업자 또는 접두사 브랜치 목록 필터링 조회:
git branch --list "ckdtjs505/*"
느낀점
- 브랜치명만 보고도 PR(Pull Request) 리뷰 전 작업 범위를 미리 예측할 수 있어 커뮤니케이션 비용 감소
- 개인 작업자와 티켓 번호를 결합한 계층적 네이밍 규칙이 대규모 프로젝트에서 브랜치 충돌 및 혼선을 최소화함
결론
- 브랜치 네이밍 컨벤션은 단순한 작명 규칙을 넘어 협업 능률, 형상 관리 시각화, 자동화 파이프라인의 기반이 됨
참고
- Git Feature Branch Workflow (Atlassian Guide)
- Git-Flow 및 GitHub Flow 브랜치 전략 표준 명세
요약 이미지
[Repository]
├── ckdtjs505/
│ └── feature/
│ └── SOOPKR-101-chat-packet-pipeline ──> (신규 기능 개발)
├── hotfix/
│ └── SOOPKR-102-memory-leak-fix ──> (운영 긴급 조치)
└── release/
└── v1.2.0 ──> (배포 파이프라인 연동)