Obecnie jestem zajęty projektem z wieloma gałęziami i mam tag dla ostatnich zmian, które zostały zrobione na jednej z gałęzi. Ale nie jest dla mnie jasne, na której gałęzi znajduje się ten tag.
Jak dowiedzieć się, na której gałęzi znajduje się tag?
Jeszcze krócej:
git branch --contains tags/<tag>
(działa dla każdego odwołania do drzewa)
Jeśli możesz znaleźć zatwierdzenie, do którego odnosi się tag :
git rev-parse --verify tags/<tag>^{commit}
# or, shorter:
git rev-parse tags/<tag>~0
Następnie możesz znaleźć gałąź zawierającą to zatwierdzenie .
git branch --contains <commit>
Jak skomentował poniżej user3356885 , dla pobranych gałęzi (gałęzi w przestrzeni nazw pilotów)
git branch -a --contains tags/<tag>
git branch -a --contains <commit>
git branch --contains <tag>
.git branch -a --contains <tag>
. To samo zadziała w przypadku zatwierdzeń.git branch --contains <tag>
. git wersja 2.23.0, zsh, open SUSE tumbleweed. Nie sądzę, aby to było specyficzne dla mojego systemu operacyjnego lub powłoki, myślę, że jest to domyślna rzecz, którą robią nowoczesne wersje git. Otwierają listę na pagerzeJeśli „git branch --contains” nic nie robi, upewnij się, że uwzględniasz wszystkie gałęzie, zarówno zdalne, jak i lokalne:
źródło
nic nie robi dla mnie, ale znalazłem rozwiązanie tego problemu w git gui .
Zacznij to tak:
(Na moim Ubuntu musiałem go najpierw zainstalować
sudo apt-get install git-gui
.)Następnie wybrałem pozycję menu Repozytorium -> Wizualizuj całą historię gałęzi . W wyświetlonym oknie wybrałem następnie pozycję menu Plik -> Lista referencji .
Pojawiło się kolejne okno z listą wszystkich moich tagów (i innych odniesień). Są one klikalne i po kliknięciu jednego z nich po prostu musiałem sprawdzić listę oddziałów w lewej dolnej ramce. Lubię to:
źródło
Jeśli chodzi o komentarz @ VonC dotyczący znalezienia zatwierdzenia, do którego odwołuje się tag, użyj po prostu:
Ponieważ znacznik jest powiązany z konkretnym zatwierdzeniem, można go użyć do pokazania tego zatwierdzenia - co da ci pełne szczegóły zatwierdzenia.
źródło
Tagiem zaznaczasz odniesienie. Więc kiedy jesteś w gałęzi deweloperów i oznacz ten stan. Twój tag znajduje się w rzeczywistym pliku referencyjnym. W tym przypadku możesz spojrzeć na gitk lub inne narzędzie, w którym pokazano drzewo. Tam możesz zobaczyć, w którym odnośniku znajduje się tag.
git: Czy istnieje coś takiego jak tagi dla poszczególnych gałęzi?
http://git-scm.com/book/en/Git-Basics-Tagging
Oto dobre wyjaśnienie.
źródło
Znacznik zawsze odnosi się do numeru zatwierdzenia. Używając tego numeru tagu, możesz znaleźć gałąź, z której został umieszczony tag:
źródło
Możesz także spróbować tego, miał podobny przypadek użycia i to zadziałało dla mnie
Nieco inaczej, ale czerpiąc inspirację z odpowiedzi @ ttfreeman
źródło