GIT에서 tag 기능을 지원합니다. 릴리즈 시 버전 관리를 위해 많이 사용한다고 합니다.
태그조회
git tag
생성한 태그들을 확인할 수 있습니다.
1 2 3 4 | $ git tag v0.0.1 v0.0.2 v0.1.0 | cs |
태그 내용 확인
git show [tagname]
특정 태그의 더 자세한 내용을 확인할 수 있습니다.
1 2 3 4 | $ git show v0.0.1 commit 5edd7420d915bda4c382c38b306e2f32b1cdbc68 Author: abc <abc@abc.com> Date: Fri Jan 13 17:54:03 2017 +0900 | cs |
태그 생성
GIT의 태그는 Lightweight 태그와 Annotated 태그로 두 종류가 있습니다.
- Lightweight 태그
git tag [tagname]
특정 커밋에 태그를 생성합니다. 특정 커밋을 가리키는 역할을 합니다.
1 | $ git tag v0.1.1 | cs |
- Annotated 태그
git tag -a [tagname] -m "Message"
태그를 만든 사람, 이메일, 날짜, 메세지를 같이 저장합니다. GPG(GNU Privacy Guard)로 서명할 수도 있다고 합니다.
-a 옵션을 사용하여 Annotated 태그를 생성합니다.
-m 옵션을 사용하면 메세지를 남길 수 있습니다.
-a 옵션만 지정하고 -m 옵션을 지정하지 않으면 message를 입력 받는 단계가 하나 더 있습니다. message를 입력하지 않으면 태그가 생성되지 않습니다.
1 | $ git tag -a v0.1.3 -m "tag test message" | cs |
원격 저장소에 태그 적용
git push origin [tagname]
태그를 생성 했으면 서버에 별도로 push를 해줘야 합니다. push를 해주지 않으면 원격 저장소에 적용이 되지 않습니다.
태그 삭제
- 로컬에서 제거
git tag -d [tagname]
1 | $ git tag -d v0.1.3 | cs |
- 원격에 적용된 태그 제거
git push origin :[tagname]
1 | $ git push origin :v0.1.2 | cs |
위의 명령이 잘 되지 않는다면
git push --delete origin [tagname] (git tag -d [tagname]로 로컬의 태그까지 지워줘야 완전히 반영됩니다.)
1 2 | $ git push --delete origin v0.1.2 $ git tag -d v0.1.2 | cs |
'note' 카테고리의 다른 글
node.js version 관리 n 버전 변경 안되는 현상 (2) | 2019.09.04 |
---|---|
IaaS, PaaS, SaaS (0) | 2017.06.10 |
Cent OS 7에 MySql 설치하기 (0) | 2017.04.09 |
AWS에 Cent OS7 셋팅하기 (0) | 2017.04.09 |
객체지향설계 5대 원칙(SOLID) 중 인터페이스 분리 원칙(ISP) (0) | 2017.02.12 |