나는 현재 많은 분기가있는 프로젝트로 바쁘고 분기 중 하나에서 수행 된 마지막 변경 사항에 대한 태그가 있습니다. 그러나이 태그가 어느 지점에 있는지 명확하지 않습니다.
태그가 어느 분기에 있는지 확인하는 방법은 무엇입니까?
나는 현재 많은 분기가있는 프로젝트로 바쁘고 분기 중 하나에서 수행 된 마지막 변경 사항에 대한 태그가 있습니다. 그러나이 태그가 어느 지점에 있는지 명확하지 않습니다.
태그가 어느 분기에 있는지 확인하는 방법은 무엇입니까?
답변:
더 짧게 :
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 -a --contains <tag>
. 커밋에서도 동일하게 작동합니다.
git branch --no-merge tags/<a-tag>
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
여기에 좋은 설명이 있습니다.
git branch --contains <tag>
.