개발관련/Git

모든 Git 태그를 나열하는 방법

Rateye 2021. 11. 29. 00:26
728x90
반응형
질문 : 모든 Git 태그를 나열하는 방법은 무엇입니까?

내 저장소에서 다음 명령을 사용하여 태그를 만들었습니다.

git tag v1.0.0 -m 'finally a stable release'
git tag v2.0.0 -m 'oops, there was still a major bug!'

저장소의 모든 태그를 어떻게 나열합니까?

답변

git tag

충분해야합니다. git tag man page 참조

또한 :

git tag -l <pattern>

주어진 패턴과 일치하는 이름을 가진 태그를 나열합니다 (또는 패턴이 제공되지 않은 경우 모두).
인수없이 "git tag"를 입력하면 모든 태그가 나열됩니다.

최근에 ( " How to sort git tags? ", for Git 2.0+)

git tag --sort=<type>

특정 순서로 정렬합니다.

지원되는 유형은 다음과 같습니다.

  • " refname "(사전 순서),
  • " version:refname "또는 " v:refname "(태그 이름은 버전으로 처리됨).

정렬 순서를 반대로하려면 앞에 "-"를 추가합니다.

두 가지 모두 나열됩니다.

  • 주석이 달린 태그 : Git 데이터베이스에 저장된 전체 개체. 체크섬입니다. 태거 이름, 이메일 및 날짜를 포함합니다. 태그 메시지가 있습니다. GNU Privacy Guard (GPG)로 서명하고 확인할 수 있습니다.
  • 경량 태그 : 기존 커밋에 대한 간단한 포인터

참고 : 태그 지정에 대한 git ready 문서는 경량 태그를 승인하지 않습니다.

인수가 없으면 git 태그는 기본적으로 절대 이동하지 않는 분기 인 "경량"태그를 만듭니다.
경량 태그는 알려진 좋은 (또는 나쁜) 버전이나 나중에 사용해야 할 커밋을 표시하는 데 여전히 유용합니다.
그럼에도 불구하고 이러한 종류의 태그를 푸시하고 싶지는 않을 것입니다 .

일반적으로 최소한 -a 옵션을 전달하여 서명되지 않은 태그를 생성하거나 -s 또는 -u 옵션을 통해 GPG 키로 태그에 서명하려고합니다.

즉, Charles Bailey git tag -m "..." '은 실제로 적절한 (서명되지 않은 주석이 달린) 태그 (옵션 ' -a ')를 의미하며 경량 태그가 아니라고 지적합니다. 따라서 초기 명령에 능숙합니다.

이것은 다음과 다릅니다.

git show-ref --tags -d

커밋과 함께 태그를 나열합니다 ( " Git 태그 목록, 커밋 sha1 해시 표시 "참조).
주석이 달린 태그 객체 (자체 커밋 SHA1이 있음)를 역 참조하고 실제 태그 커밋을 표시 -d 를 참고하십시오.

마찬가지로 git show --name-only <aTag> 는 태그 및 관련 커밋을 나열합니다.

출처 : https://stackoverflow.com/questions/1064499/how-to-list-all-git-tags
728x90
반응형