IT/Git

Git 17회차. Git 태그(Tag) 관리법

밥알이 2025. 7. 17. 06:27

🏷️ Git 17회차. Git 태그(Tag) 관리법 - 버전 릴리스의 핵심 기능

“v1.0.0”, “2025-07-release” 같은 버전 이름 보신 적 있으시죠? 바로 Git의 태그(Tag) 기능을 활용한 것입니다. 이번 회차에서는 Git 태그의 개념과 사용법, 실전 적용 방법까지 정리해드릴게요 😊


🤔 Git 태그(Tag)란?

Git 태그는 특정 커밋을 표시하는 이름표입니다. 보통 제품 출시, 배포, milestone 등 중요한 시점을 기록할 때 사용합니다.

  • ✔️ 커밋 해시보다 이해하기 쉬운 버전명을 부여
  • ✔️ 릴리스 히스토리를 명확하게 관리
  • ✔️ 릴리스 노트, 배포 자동화와 연계 가능

한마디로 “이 시점이 v1.0.0 버전입니다!” 하고 알려주는 마크입니다 😊


📌 태그는 두 가지가 있어요

1️⃣ Lightweight Tag

  • ✔️ 간단한 이름만 부여
  • ✔️ 추가 정보 없이 커밋에 이름표만 붙임
  • ✔️ 임시 버전, 빠른 체크에 적합
git tag v1.0.0

2️⃣ Annotated Tag

  • ✔️ 작성자, 메시지, 날짜 포함
  • ✔️ GPG 서명 가능 (공식 릴리스용)
  • ✔️ 릴리스 기록, 배포용 태그로 적합
git tag -a v1.0.0 -m "최초 릴리스 버전"

보통 실제 프로젝트에서는 Annotated Tag를 더 많이 씁니다!


🛠️ Git 태그 기본 명령어

1. 태그 생성

# Lightweight
git tag v1.0.0

# Annotated
git tag -a v1.0.0 -m "최초 정식 릴리스"

2. 특정 커밋에 태그

git tag -a v1.1.0 abc1234 -m "v1.1.0 릴리스"

abc1234는 커밋 해시입니다.

3. 태그 목록 확인

git tag

4. 태그 상세 확인

git show v1.0.0

5. 태그 삭제

git tag -d v1.0.0

6. 원격 저장소에 태그 푸시

git push origin v1.0.0

7. 모든 태그 푸시

git push origin --tags

🧪 실전 예시: 버전 릴리스 태그 붙이기

  1. 프로젝트에서 main 브랜치가 안정 상태일 때
  2. 최신 커밋에 Annotated Tag 생성
  3. 버전명은 v1.0.0 등으로 부여
  4. GitHub에 푸시 후 릴리스 등록
git checkout main
git pull
git tag -a v1.0.0 -m "v1.0.0 정식 릴리스"
git push origin v1.0.0

이제 GitHub에서도 해당 버전을 쉽게 찾을 수 있습니다!


🌐 GitHub에서 태그로 릴리스 만들기

  1. GitHub 저장소 → Releases 탭 클릭
  2. “Draft a new release” 클릭
  3. 기존 태그 선택 or 새 태그 작성
  4. 릴리스 노트 작성
  5. Publish 버튼 클릭

이제 누구나 GitHub에서 버전별 소스코드 zip 다운로드가 가능해요! 정식 릴리스 관리가 훨씬 깔끔해집니다 🎉


⚠️ 태그 관련 주의사항

  • ✔️ 태그를 되도록 자주 수정하지 마세요 (신뢰성 하락)
  • ✔️ 동일한 버전명 중복 생성 금지
  • ✔️ 태그를 잘못 푸시했을 경우 강제 삭제 및 재등록 필요

잘못된 태그 삭제 예시

# 로컬에서 삭제
git tag -d v1.0.0

# 원격에서 삭제
git push origin :refs/tags/v1.0.0

📌 태그 관리 베스트 프랙티스

  • ✔️ 릴리스마다 Annotated Tag로 버전 명시
  • ✔️ Semantic Versioning 활용 (v1.2.3 형식)
  • ✔️ 태그 기준으로 changelog 및 릴리스 노트 관리
  • ✔️ CI/CD 파이프라인에서 태그 기반 배포 트리거 사용

📌 오늘의 핵심 요약

  • ✔️ Git 태그는 커밋에 이름표를 붙이는 기능
  • ✔️ Annotated Tag는 릴리스용, Lightweight Tag는 임시용
  • ✔️ GitHub 릴리스와 연계하면 릴리스 관리가 훨씬 쉬워져요

이제 프로젝트에 명확한 버전 히스토리를 남기고 싶다면 Git 태그를 꼭 활용해보세요 😊


📎 다음 회차 예고

18회차. 실무에서 자주 하는 Git 실수 TOP 5와 해결법

✔️ 잘못된 커밋, 잘못된 브랜치 삭제 ✔️ push 후 롤백 ✔️ force push의 위험성