Git, Github 버전관리 | Tag와 Release
2025. 1. 23. 01:59ㆍ기반기술/Git, Github
1. Tag (태그)
Git의 기본 개념으로, 특정 커밋에 "이름표"를 붙이는 기능이야.
- 설명:
- 특정 커밋을 가리키는 고정된 "스냅샷" 같은 것.
- 주로 버전을 표시할 때 사용해 (v1.0, v1.1 등).
- 커밋 해시값(긴 ID)을 기억할 필요 없이 태그를 통해 특정 시점을 쉽게 참조할 수 있어.
- 예시:
- git tag v1.0 → 현재 커밋에 v1.0이라는 태그를 붙임.
- git tag -a v1.0 -m "첫 번째 릴리스" → 설명을 포함한 주석 태그(Annotated Tag)를 생성.
- 깃허브에서의 활용:
- 깃허브에서 태그는 저장소의 Code 탭 > "Tags" 섹션에서 확인 가능해.
- 태그를 Release와 연결해서 사용 가능.
2. Release (릴리스)
깃허브의 개념으로, 태그를 기반으로 한 "정식 배포" 같은 개념이야.
- 설명:
- 태그에 추가 정보를 포함해서, 소프트웨어 배포나 주요 버전을 공개하는 데 사용해.
- 릴리스 노트를 작성해서 변경 사항, 새로운 기능, 수정된 내용 등을 기록할 수 있어.
- 사용자는 특정 릴리스의 코드를 다운로드할 수 있어 (.zip, .tar.gz).
- 릴리스 작성 방법:
- 깃허브 저장소의 Releases 탭으로 이동.
- "Draft a new release" 클릭.
- 태그 선택(또는 새 태그 생성), 제목, 설명(릴리스 노트) 작성.
- Publish 버튼 클릭.
Tag와 Release의 차이점
Tag | Release | |
역할 | 커밋에 "이름표" 붙이기 | 태그에 추가 정보(릴리스 노트) 제공 |
위치 | Git/GitHub 공통 | GitHub에서 제공 |
사용 목적 | 특정 시점 참조 | 배포 또는 공식 버전 공개 |
릴리스 노트 | 없음 | 있음 (변경 사항 요약 가능) |
다운로드 가능 | 기본적으로 불가능 (추가 조치 필요) | 가능 (.zip, .tar.gz 파일 자동 제공) |
언제 사용하면 좋을까?
- Tag
- 버전 관리를 위한 체크포인트 설정.
- 예: v1.0, v1.1, hotfix-2025-01-22.
- Release
- 사용자에게 프로젝트를 정식으로 배포할 때.
- 주요 변경 사항을 공유하거나 테스트 가능한 버전을 제공하고 싶을 때.