Git을 처음 접한 초보자 입장에선 “왜 이렇게까지 복잡하게 나누지?”, “그냥 저장하고 푸시하면 되는 거 아냐?”라는 생각이 들 수 있습니다. 그래서 이번에는 ‘브랜치 전략이 왜 필요한지, 언제 쓰는지, 초보자가 겪는 상황별로 언제 유용한지’까지 쉽게 풀어서 설명해 드릴게요.
🍊 Git 브랜치 전략, 초보자도 이해할 수 있게!
💡 왜 Git 브랜치 전략이 필요한가요?
코드 작업을 혼자서만 한다면 사실 main 하나만 써도 문제 없습니다. 하지만 아래 상황이 하나라도 있다면? 브랜치 전략이 꼭 필요합니다.
✅ 필요한 상황 3가지
상황
설명
Git 브랜치 전략으로 해결되는 점
1인 이상이 함께 개발
여러 사람이 동시에 수정 → 충돌 발생 위험
각자 feat/*로 작업 후 dev에 통합, 충돌 최소화
실수로 코드를 망가뜨림
코딩 중 잘못된 수정으로 앱 오류 발생
main은 항상 안정 상태 유지! 실험은 dev에서
새로운 기능 실험 중
아직 검증되지 않은 기능 개발 중
feat/*에서 마음껏 실험 후 리뷰받고 합치기
🤔 초보자가 자주 겪는 문제 vs 브랜치 전략
자주 겪는 문제
브랜치 전략 도입 후 변화
“내가 뭘 고쳤는지 모르겠어요”
커밋 & 브랜치로 이력 추적 가능
“기능 하나 수정하다 앱 전체가 깨졌어요”
feat/*에서 실험, main은 언제나 정상 작동
“같이 작업 중인데 서로 코드가 꼬여요”
브랜치로 분리 → 리뷰 → 병합 순서로 충돌 최소화
🔍 언제 어떤 브랜치를 쓰면 되나요?
상황
사용할 브랜치
설명
새 기능 만들고 싶을 때
feat/기능명
내 작업대입니다. 마음껏 실험 가능!
기능 다 만들고 공유할 때
PR → dev
테스트 자동 실행 + 리뷰어 검토
사용자에게 서비스 배포할 때
main
문제 없는 코드만 올려야 함 (릴리스 태그도 이때 생성)
급하게 오류 수정할 때
hotfix/이름
바로 고친 뒤 main에 바로 머지 (버전 태그도 생성)
🧠 핵심 요약 비유로 다시 정리
개념
비유
역할
main
🏛 배포 가능한 전시관
완성된 작품만 전시
dev
🧪 실험실
작가들의 작업물이 모여 검토되는 곳
feat/*
🎨 개인 작업실
각 작가가 창작 활동 중인 공간
🧪 초보자가 해볼 수 있는 실습 루틴
🌱 1. 처음 브랜치 전략 적용해보기
# 1. dev 브랜치에서 최신 코드 받아오기
git checkout dev
git pull
# 2. 새로운 작업 브랜치 생성
git checkout -b feat/hello-api
# 3. 작업 + 저장
echo "Hello API!" >> api.py
git add api.py
git commit -m "feat(api): 인사 API 스텁 추가"
# 4. GitHub로 푸시 + PR 만들기
git push --set-upstream origin feat/hello-api