programing

Git : 태그가 어떤 브랜치에 있는지 확인하는 방법은 무엇입니까?

itsource 2021. 1. 14. 08:17
반응형

Git : 태그가 어떤 브랜치에 있는지 확인하는 방법은 무엇입니까?


나는 현재 많은 분기가있는 프로젝트로 바쁘고 분기 중 하나에서 수행 된 마지막 변경 사항에 대한 태그가 있습니다. 그러나이 태그가 어느 지점에 있는지 명확하지 않습니다.

태그가 어느 분기에 있는지 확인하는 방법은 무엇입니까?


더 짧게 :

git branch --contains tags/<tag>

(모든 나무 같은 참조에서 작동합니다)


태그가 참조하는 커밋을 찾을 수 있는 경우 :

 git rev-parse --verify tags/<tag>^{commit}
 # or, shorter:
 git rev-parse tags/<tag>~0

그런 다음 해당 커밋을 포함하는 분기 를 찾을 수 있습니다 .

git branch --contains <commit>

으로 주석 아래 user3356885 인출 된 지점에 대해, (리모트 네임 스페이스에 지사)

git branch -a --contains tags/<tag>
git branch -a --contains <commit>

"git branch --contains"가 아무 작업도 수행하지 않는 경우 원격 및 로컬 브랜치 모두를 포함하는 모든 브랜치를 포함해야합니다.

git branch -a --contains <tag>

git 도움말에서 :

특정 git-branch 작업 : -a, --all 원격 추적 및 로컬 분기 모두 나열


git branch --contains tag

나를 위해 아무것도하지 않지만 git gui 에서이 문제에 대한 해결책을 찾았습니다 .

다음과 같이 시작하십시오.

git gui

(우분투에서는 먼저 sudo apt-get install git-gui.

그런 다음 Repository-> Visualize All Branch History 메뉴 항목을 선택했습니다 . 결과 창에서 File-> List References 메뉴 항목을 선택했습니다 .

내 태그 (및 기타 참조)를 모두 나열하는 또 다른 창이 나타납니다. 이것들은 클릭 가능하며 그중 하나를 클릭 한 후 왼쪽 하단 프레임에서 분기 목록을 확인해야했습니다. 이렇게 :

Parent: somesha (message)
Parent: someothersha (another message)
Child:  anothersha (yet another message)
Branches: branch1, master, remotes/origin/branch2, remotes/upstream/branch1, etc
Follows: v1.1.2
Precedes: v1.1.4

태그를 사용하여 참조를 표시합니다. 따라서 개발 브랜치에있을 때이 상태에 태그를 지정합니다. 귀하의 태그는 실제 참조에 있습니다. 따라서이 경우 gitk 또는 트리가 표시되는 다른 도구를 찾을 수 있습니다 . 태그가 어떤 참조에 있는지 확인할 수 있습니다.

git : 분기 별 태그와 같은 것이 있습니까?
http://git-scm.com/book/en/Git-Basics-Tagging

여기에 좋은 설명이 있습니다.


태그가 참조하는 커밋을 찾는 것에 대한 @VonC의 의견과 관련하여 다음을 사용하십시오.

git show <tag>

태그는 특정 커밋에 연결되어 있으므로 해당 커밋을 표시하는 데 사용할 수 있습니다. 그러면 전체 커밋 세부 정보가 제공됩니다.

참조 URL : https://stackoverflow.com/questions/15806448/git-how-to-find-out-on-which-branch-a-tag-is

반응형