본문 바로가기
코딩해보니/Git

[Git_56] 태그(Tag) - 삭제하기 & 브랜치

by 위시랜 2023. 5. 14.

태그(Tag) - 삭제하기 & 태그 브랜치
태그(Tag) - 삭제하기 & 태그 브랜치

태그(Tag) 삭제하기

로컬 저장소의 태그 삭제

생성한 태그는 언제든지 삭제할 수 있습니다.

터미널에서 삭제하는 명령은 다음과 같이 -d 옵션삭제할 태그 이름을 함께 사용합니다.

# 태그 삭제하기
$ git tag -d <태그 이름>

 

다음은 터미널에서 커밋 이력을 확인해 태그를 확인한 다음 1.0.0을 삭제한 화면입니다.

태그를 확인한 다음 1.0.0 을 삭제한 화면
태그를 확인한 다음 1.0.0 을 삭제한 화면

 

삭제 후 다음과 같이 다시 커밋 이력을 확인해 삭제된 것을 확인할 수 있습니다.

커밋 이력 확인
커밋 이력 확인

이와 같이 태그는 단순히 커밋에 대한 꼬리표라는 포인터 개념이기 때문에 삭제하더라도 커밋에 영향을 주진 않습니다.


소스트리(Sourcetree)에서 로컬 저장소 태그 삭제

소스트리(Sourcetree)에서도 마찬가지로 편리하게 삭제할 수 있습니다.

다음과 같이 소스트리 왼쪽 사이드 메뉴에 태그 목록에서 삭제하고자 하는 태그에 마우스를 가져가 오른쪽 버튼을 클릭하면 나타나는 팝업 메뉴에서 (선택한 태그 이름) 삭제 메뉴를 클릭해 삭제할 수 있습니다.

소스트리(Sourcetree)에서 태그 삭제
소스트리(Sourcetree)에서 태그 삭제

 

또 다르게는 앞서 태그 생성할 때와 마찬가지로 상단 메뉴에서

메뉴를 클릭해도 되겠습니다.

소스트리(Sourcetree)에서 태그 삭제
소스트리(Sourcetree)에서 태그 삭제

 

해당 메뉴를 클릭해 나오는 위 화면에서 [태그 제거] 탭을 클릭하고, 삭제할 태그를 선택한 다음, [태그 제거] 버튼을 클릭하면 됩니다.


서버(원격) 저장소의 태그 삭제

서버(원격) 저장소의 태그 정보를 삭제할 때에도 원격 브랜치 삭제와 마찬가지로 생각하면 쉽습니다.

원격 브랜치 삭제가 다음과 같았다면,

# 원격 브랜치 삭제
$ git push <원격 저장소 이름> -d(또는 --delete) <원격 저장소 브랜치>

서버(원격) 저장소의 태그 정보 삭제는 <원격 저장소 브랜치> 대신에 <원격 저장소 태그>를 입력하면 되겠습니다.

# 원격 저장소 태그 삭제
$ git push <원격 저장소 이름> -d(또는 --delete) <원격 저장소 태그>

소스트리(Sourcetree)에서 서버(원격) 저장소 태그 삭제

소스트리에서 태그를 삭제시에 원격 저장소의 태그도 함께 제거할 수 있는 옵션이 있었습니다.

소스트리(Sourcetree)에서 서버(원격) 저장소 태그 삭제
소스트리(Sourcetree)에서 서버(원격) 저장소 태그 삭제

위 화면과 같은 [태그 제거] 탭의 항목에서 “모든 원격 저장소에서 태그 제거”에 체크한 뒤 [태그 제거]를 실행할 경우 서버(원격) 저장소에도 함께 제거해 바로 동기화할 수 있습니다.


태그 브랜치

지금까지 태그를 생성하고 서버 저장소와 동기화도 해봤습니다.

마지막으로 이렇게 달아 둔 태그를 기반으로 브랜치를 만들 수 있습니다.

다음 포스팅에서 “브랜치”에 대해 학습하면서 브랜치 생성과 동시에 이동하기를 알아봤습니다.

 

 

[Git_28] 브랜치(Branch) 이동(checkout)

브랜치(Branch) 이동(checkout) 브랜치는 작업자라고 생각하면 이해가 쉬울 것이라 얘기했습니다. 나는 어느 작업자(브랜치)를 컨트롤할 것인지 정해야 합니다. 동시에 두 개 이상의 작업자(브랜치)

wishlan.tistory.com

브랜치 생성과 동시에 이동하는 방법은 다음의 명령을 사용했습니다.

# 브랜치 생성과 동시에 이동하기
$ git checkout -b <브랜치 이름>

 

이를 활용해 태그를 기반으로 브랜치를 만들 수 있습니다.

# 태그를 기반으로 브랜치 생성과 동시에 이동하기
$ git checkout -b <브랜치 이름> <태그 이름>

만들고자 하는 <브랜치 이름> 뒤에 <태그 이름>을 추가하면 됩니다.

생각해 보면 <태그 이름>은 특정 커밋을 가리키는 포인터의 개념이기 때문에 <태그 이름> 대신 <커밋ID>를 사용할 수도 있습니다.

 

브랜치를 만들 때 $ git branch <브랜치 이름> <커밋ID> 와 같이 사용했다면, 마찬가지로 <커밋ID>대신 <태그 이름>을 사용해 만들 수도 있습니다.

 

지금까지 태그(Tag)를 삭제하는 방법과 태그 브랜치에 대해 알아봤습니다.

 

감사합니다.

 

 

댓글