Chcę, aby git wyświetlał wszystkie tagi wraz z pełną adnotacją lub wiadomością zatwierdzenia. Coś takiego jest blisko:
git tag -n5
Robi to dokładnie to, co chcę, poza tym, że wyświetla się tylko do pierwszych 5 wierszy wiadomości tagu.
Chyba mogę użyć bardzo dużej liczby. Jakiej liczby mogę użyć tutaj? Czy to samo na każdym komputerze?
AKTUALIZACJA : Miałem dużo czasu na przemyślenie tego i teraz myślę, że niekoniecznie chcę pokazać całą każdą wiadomość, jeśli niektóre są wyjątkowo długie. Tak naprawdę nie potrzebowałem żadnej szczególnej potrzeby, która wymagałaby ode mnie wyświetlania ogromnych wiadomości (innych niż moja własna skłonność do bycia rozwikłanym we wszystkim, co piszę, w tym w tagach). Po prostu nie podobał mi się pomysł, że niekoniecznie pokaże mi całą wiadomość, ponieważ to sprawiło, że poczułem, że ukrywa przede mną informacje. Ale zbyt wiele informacji może być również złą rzeczą.
git tag -n
Zrobiłem to dla mniegit tag -n
drukuje tylko pierwszy wiersz adnotacji, zgodnie ze stroną podręcznika.Odpowiedzi:
Spróbuj, wyświetli wszystkie tagi wraz z adnotacjami i 9 liniami wiadomości dla każdego tagu:
można również użyć
jeśli określone tagi mają zawierać:
(np. powyższe polecenie wyświetla tylko tagi zaczynające się od „v3”).
-l, --list Lista znaczników z nazwami pasującymi do podanego wzorca (lub wszystkich, jeśli nie podano wzorca). Uruchomienie „git tag” bez argumentów wyświetla również wszystkie tagi. Wzorzec jest znakiem wieloznacznym powłoki (tzn. Dopasowanym za pomocą fnmatch (3)). Można podać wiele wzorów; jeśli którykolwiek z nich pasuje, znacznik jest wyświetlany.
źródło
-l
opcja polega na filtrowaniu według wzorca. Nie rozumiem, jak by to było pomocne. Czy coś brakuje?-l
jest całkowicie zbędnyKrótkie i słodkie. Spowoduje to wyświetlenie do 99 wierszy z każdej wiadomości adnotacji / zatwierdzenia znacznika. Oto link do oficjalnej dokumentacji tagu git .
Myślę, że ograniczenie wyświetlania tylko 99 linii na tag jest w rzeczywistości dobrą rzeczą, ponieważ przez większość czasu, gdyby było naprawdę więcej niż 99 linii na jeden tag, naprawdę nie chciałbyś zobaczyć całej reszty linie byś? Jeśli chciałbyś zobaczyć więcej niż 99 linii na tag, zawsze możesz zwiększyć to do większej liczby.
Mam na myśli, że może istnieć konkretna sytuacja lub powód, aby chcieć zobaczyć masowe wiadomości tagów, ale w którym momencie nie chcesz zobaczyć całej wiadomości? Kiedy ma więcej niż 999 linii? 10 000? 1 000 000? Chodzi mi o to, że zwykle ma sens ograniczenie liczby linii, które można zobaczyć, a ta liczba pozwala to ustawić.
Ponieważ argumentuję za tym, co ogólnie chcesz zobaczyć, gdy patrzysz na tagi, prawdopodobnie warto ustawić coś takiego jako alias (z komentarza Iuliana Onofrei poniżej):
git config --global alias.tags 'tag -n99'
Chodzi mi o to, że tak naprawdę nie chcesz wpisywać za
git tag -n99
każdym razem, gdy chcesz tylko zobaczyć tagi, prawda? Po skonfigurowaniu tego aliasu za każdym razem, gdy chcesz zobaczyć swoje tagi, wystarczy wpisaćgit tags
w terminalu. Osobiście wolę pójść o krok dalej i stworzyć jeszcze bardziej skrócone aliasy bash dla wszystkich moich często używanych poleceń. W tym celu możesz dodać coś takiego do pliku .bashrc (działa w systemie Linux i podobnych środowiskach):alias gtag='git tag -n99'
Następnie, gdy chcesz zobaczyć tagi, po prostu wpisz
gtag
. Kolejną zaletą przejścia aliasami (aliasy git lub aliasy bash lub cokolwiek innego) jest to, że masz już miejsce, w którym możesz dodawać dalsze dostosowania do tego, jak osobiście chcesz, aby Twoje tagi były pokazywane (np. Sortowanie je w określony sposób, jak w moim komentarzu poniżej itp.). Gdy miniesz już trud tworzenia pierwszego aliasu, zrozumiesz, jak łatwo jest stworzyć więcej z nich dla innych rzeczy, które lubisz pracować w spersonalizowany sposób, na przykładgit log
, ale zapiszmy to na inne pytanie / odpowiedź .źródło
git config --global alias.tags 'tag -n99'
alias gtag='git for-each-ref --format="%(refname:short) %(taggerdate) %(subject) %(body)" refs/tags | sort -V'
Odpowiedź (użycie
git show
) Marka Longaira jest zbliżona do tego, co jest pożądane w pytaniu. Zawiera jednak również zatwierdzenie wskazane przez znacznik, wraz z pełną łatką dla tego zatwierdzenia. Ponieważ zatwierdzenie może być nieco niezwiązane ze znacznikiem (tylko jeden zatwierdzenie próbuje przechwycić znacznik), może to być niepożądane. Uważam, że następujące jest nieco ładniejsze:źródło
To nie jest ładne, ale możesz utworzyć skrypt lub alias, który robi coś takiego:
źródło
git for-each-ref refs/tags/ --format='%(refname)'
zgit tag -l
?git tag
jest to porcelana igit for-each-ref
hydraulika, więc wyniki tego ostatniego powinny być bardziej stabilne do pisania skryptów.Tylko ostatnia wiadomość znacznika:
źródło
git cat-file -p <tag> | tail -n +6
Użyj opcji --format
źródło
Wolę to robić w wierszu poleceń, ale jeśli nie przeszkadza ci interfejs internetowy i korzystasz z GitHub, możesz odwiedzić
https://github.com/user/repo/tags
i kliknąć „...” obok każdego znacznika, aby wyświetlić jego adnotację.źródło