개발관련/Git

Git에서 태그가 가리키는 커밋을 확인하는 방법

Rateye 2022. 1. 17. 12:13
728x90
반응형
질문 : Git에서 태그가 가리키는 커밋을 확인하는 방법은 무엇입니까?

저장소에 주석이없는 태그가 많이 있고 어떤 커밋을 가리키는 지 알아 내고 싶습니다. 태그와 커밋 SHA를 나열하는 명령이 있습니까? 태그를 확인하고 HEAD를 보는 것은 나에게 너무 힘들어 보입니다.

나는 응답을 통해 내가 실제로 원했던 것은 단순히 태그에 이르는 히스토리를 보는 것임을 깨달았습니다. git log <tagname> 이면 충분합니다.

답변으로 표시된 답변은 태그 및 커밋 목록을 얻는 데 유용합니다. 약간의 셸 해커를 사용하면이를 SHA + Commit 메시지로 변환 할 수 있다고 확신합니다.

답변

이를 수행하는 한 가지 방법은 git rev-list 입니다. 다음은 태그가 가리키는 커밋을 출력합니다.

$ git rev-list -n 1 $TAG

참고 이것은 주석이 달린 태그와 주석이없는 태그 모두에서 작동합니다.

많이 사용한다면 ~/.gitconfig 별칭으로 추가 할 수 있습니다.

[alias]
  tagcommit = rev-list -n 1

그런 다음 다음과 같이 호출하십시오.

$ git tagcommit $TAG

가능한 함정 : 로컬 체크 아웃 또는 동일한 태그 이름의 분기가있는 경우이 솔루션은 " warning : refname 'myTag'is ambiguous "를 표시 할 수 있습니다. 이 경우 특이성을 높이십시오. 예 :

$ git rev-list -n 1 tags/$TAG
출처 : https://stackoverflow.com/questions/1862423/how-to-tell-which-commit-a-tag-points-to-in-git
728x90
반응형