효과적인 소스 코드 관리의 핵심, 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 |