효과적인 소스 코드 관리의 핵심, Git의 tag와 branch! 이 글에서는 두 개념의 차이와 실무 활용법, 선택 기준까지 명확하게 정리합니다.


목차

  • Tag와 Branch란?
  • 핵심 비교 표
  • 실전 사용예
  • 활용 전략 & 선택 기준
  • 결론 및 요약

Tag와 Branch란?

Branch(브랜치)란?

브랜치는 코드 작업을 위한 독립적인 개발 공간. 새 기능 개발, 버그 수정, 실험 등 다양한 작업에 쓰이며, 최신 커밋을 계속 따라갑니다.[3]

Tag(태그)란?

태그는 릴리즈, 배포 등 특정 커밋 시점을 표시하는 스냅샷 기능입니다. 한 번 지정하면 그 커밋을 영구적으로 가리켜 이후에도 변하지 않는 '고정점'을 만들어줍니다.[2]


Tag와 Branch 핵심 비교

Tag Branch
정의 특정 커밋에 스냅샷을 남기는 기능 (고정적)[5] 작업 흐름을 위한 코드의 분기 (유동적)[3]
주목적 릴리즈, 배포, 이력 및 버전 관리[6] 기능 개발, 병렬 협업, 테스트, 실험[6]
동작 지정 커밋에 고정, 이동 안 함 커밋될 때마다 최신 상태로 이동
활용 예 1.0.0 버전 릴리즈, 롤백 기준점 feature/login, bugfix/error 수정 등
수정여부 삭제/재생성만 허용, 직접 수정 불가 언제든 변경 가능

Tag와 Branch 실전 사용 예시

Tag 사용 예시

# 릴리즈 배포 시 커밋에 태그 추가
git tag -a v1.0.0 -m "Release version 1.0.0"

# 기존 커밋에 태그 적용
git tag -a v2.2.3 9fceb02 -m "Hotfix v2.2.3 for production issue"

# 태그 목록 확인
git tag

# 태그 정보 확인
git show v1.0.0

# 태그를 원격 저장소로 푸시
git push origin v1.0.0
# 모든 태그 푸시
git push origin --tags

주요 활용:

  • 배포 버전 관리 및 롤백
  • 완성된 기능, 생산환경에 올라간 커밋 기록
  • 특정 릴리즈 시점 간편 추적[6][3][2]

Branch 사용 예시

# 새 브랜치 생성 및 이동
git checkout -b feature/login

# 브랜치간 병합
git merge feature/login

# 브랜치 삭제
git branch -d feature/login

# 원격 브랜치 푸시
git push origin feature/login

# 브랜치 목록 확인
git branch

주요 활용:

  • 독립적 기능 개발
  • 다양한 버그 수정 및 실험
  • 협업 시 각자 분기 생성[5][3]

활용 전략 및 선택 기준

  • 새 작업, 개발, 테스트, 협업에는 branch
  • 배포, 릴리즈, 버전 및 이력 관리에는 tag

둘을 병행하면 프로젝트의 안정성과 생산성이 극대화됩니다!


결론 및 요약

branch는 작업 흐름을, tag는 히스토리와 릴리즈를 관리


Happy GoSu ~

WooGong ))*

\\\\\

반응형

'Tools > Github' 카테고리의 다른 글

[Github] Using multiple Github accounts on one computer (in Windows)  (0) 2025.06.25
[Github] Git 명령어  (0) 2021.08.24
[Github] Git clone  (0) 2020.01.23

+ Recent posts