Pink Spider/git에서 tag의 활용

Created Sat, 04 Jan 2025 13:18:03 +0900 Modified Mon, 08 Dec 2025 08:41:47 +0900
513 Words 2 min

git 에서 tag는 언제 쓰고 어떻게 쓸까?

  • Git에서 **tag(태그)**는 특정 커밋에 이름을 붙여서 식별하기 쉽게 만드는 기능입니다.
  • 일반적으로 릴리즈 버전을 표시할 때 많이 사용되며, 특정 시점의 스냅샷을 의미합니다.

🎯 태그의 주요 역할

  1. 릴리즈 마킹

    • 예: v1.0.0, v2.1.3
    • 배포한 버전이 어떤 커밋인지 명확하게 추적할 수 있습니다.
  2. 스냅샷 저장

    • 특정 커밋에 중요한 의미를 부여하고 싶을 때 (예: 첫 배포, 테스트 완료 지점 등)
  3. CI/CD 트리거용

    • 태그가 push될 때 자동 배포되도록 CI 파이프라인 설정이 가능

🛠️ 태그의 종류

  1. Lightweight Tag (가벼운 태그)
    • 단순히 커밋을 가리키는 포인터
    • Git 내부적으로는 브랜치와 유사한 구조
    git tag v1.0.0
    
  2. Annotated Tag (주석이 있는 태그)
    • 태그 생성자 정보, 날짜, 메시지 등을 포함
    • 릴리즈에는 보통 이걸 사용
    git tag -a v1.0.0 -m "Release version 1.0.0"
    

📤 태그 푸시 및 공유

  • 태그는 기본적으로 git push로 자동 푸시되지 않음. 명시적으로 푸시해야 함:
    # 특정 태그 푸시
    git push origin v1.0.0
    
    # 모든 태그 푸시
    git push origin --tags
    

🔍 태그 확인

# 로컬 태그 목록
git tag

# 특정 태그가 가리키는 커밋 보기
git show v1.0.0

🧽 태그 삭제

# 로컬 태그 삭제
git tag -d v1.0.0

# 원격 태그 삭제
git push origin --delete v1.0.0

📦 활용 예시 (릴리즈 관리)

# 코드가 안정화된 시점
git checkout main
git pull
git tag -a v1.0.0 -m "First stable release"
git push origin v1.0.0
  • CI/CD 도구(GitHub Actions, Jenkins 등)는 이 태그를 감지해서 v1.0.0을 자동으로 배포하게 할 수 있습니다.