Git 분기 전략: 협업과 코드 관리의 핵심
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
개발 툴
대상자
- 대상자: Git을 사용하는 개발자, 팀 협업에 참여하는 프로젝트 멤버
- 난이도: 중급(기초 명령어와 협업 전략 포함)
핵심 요약
- 브랜치는 가벼운 포인터로, 주요 코드베이스를 안전하게 분리하여 작업할 수 있다 (예:
main
또는master
브랜치). - 기본 명령어 (
git branch
,git checkout -b
,git merge
)와 협업 흐름 (feature/
,bug/
,release/
)을 통해 버그 수정, 기능 개발, 테스트 분리 가능. - 최적화 팁:
- main
브랜치에 직접 작업하지 않기
- 명확한 브랜치 이름 사용 (예: feature/signup-ui
)
- 병합 후 사용하지 않는 브랜치 정리
섹션별 세부 요약
1. Git 브랜치란?
- 브랜치는 커밋의 가벼운 포인터로,
main
브랜치와 병렬로 작업 가능. main
은 생산 가능한 안정 코드, 다른 브랜치는 실험/기능 개발에 사용.
2. 브랜치 사용 이유
- 실험: 새로운 기능 개발 시
main
에 영향 없이 작업. - 버그 수정:
main
코드를 변경하지 않고 별도 브랜치에서 수정. - 협업: 팀원과 병렬 작업 시 코드 충돌 방지.
- 코드 정리:
main
에만 배포 가능한 청정한 코드 유지.
3. 기본 명령어
- 브랜치 생성:
git branch feature/login
- 브랜치 전환:
git checkout -b feature/login
- 브랜치 목록 확인:
git branch
- 병합:
git checkout main && git merge feature/login
- 삭제:
git branch -d feature/login
4. 간단한 워크플로우
- 브랜치 생성:
git checkout -b feature/add-user-auth
- 변경사항 추가 및 커밋:
git add . && git commit -m "Add user authentication"
main
으로 전환 후 병합:git checkout main && git merge feature/add-user-auth
- 사용 완료 후 삭제:
git branch -d feature/add-user-auth
5. 프로 팁
- 최신 코드 가져오기:
git pull
후 브랜치 생성. - 명확한 이름 사용:
bug/fix-login
,feature/signup-ui
와 같은 구조. - 메인 브랜치 보호: 직접 작업하지 않도록 주의.
6. 인기 있는 브랜치 모델
- Git Flow:
- main
: 생산 코드
- develop
: 통합 브랜치
- feature/*
: 기능 개발
- release/*
: 사전 배포
- hotfix/*
: 긴급 수정
- GitHub Flow:
- main
+ feature/
브랜치 사용
- Pull Request(PR)를 통해 병합
결론
- 브랜치는 협업과 코드 안정성의 핵심 도구로,
main
을 보호하고 병합 흐름을 체계적으로 관리해야 한다. - 명확한 명명 규칙과 PR 사용을 통해 팀 워크플로우를 최적화하고, 정기적으로 사용하지 않는 브랜치 정리로 리포지토리 정리.