Odpowiedzi:
Próbować:
hg id -i
Przykład:
$ hg id -i
adc56745e928
hg --debug id -i
jeśli chcesz obsługiwać szablon, użyj hg parent --template '{node}'
Nie używaj hg log -l 1
, jest to najnowszy zestaw zmian repozytorium, a nie bieżący zestaw zmian kopii roboczej.
.
kropki jako wersji.
hg help revisions
i hg help revsets
ma takie szalone, potężne skróty.
hg id -i
drukuje tylko krótką (12 znaków) postać globalnego hash id, a ponieważ hg identify
nie ma --template
afaics, nie ma sposobu, aby wyodrębnić tylko wersję i nic więcej, ponieważ strona podręcznika to mówi drukuje podsumowanie.
hg --debug id -i
Spowoduje to wyświetlenie długiego skrótu, z plusem, jeśli są niezatwierdzone zmiany.
Możesz użyć --template z poleceniem nadrzędnym, używam tego, aby uzyskać długi hash:
hg parent --template '{node}'
hg parents
jest WYCOFANE , chociaż być może tak nie było, kiedy pisałeś tę odpowiedź. W przypadku niezatwierdzonego scalenia istnieją dwie wersje nadrzędne .
Podsumowując odpowiedzi i ich odpowiedzi, wydaje się, że jest to najlepszy sposób na wydrukowanie unikalnego (nie krótkiego) identyfikatora aktualnej wersji:
hg log -l 1 --template '{node}\n' -r .
.
(kropka) wyświetla tylko pierwszego rodzica dwojga rodziców grupy roboczej.
hg log -l 1 --template '{node|short}\n'
Zobacz dokumentację , akapity „Podstawy tworzenia szablonów” i następne.
lid
aby log -l 1 --template '{node}\n'
osiągnąć dokładnie to - wydrukuj pełny identyfikator wersji.
hg --debug id -i
jak powiedziano w innym miejscu.
Najbardziej specyficzne polecenie, które nie zostało WYCOFANE, które ze względu na obecność --template
może wydrukować tylko informacje o rewizji, jeśli taka zwięzłość jest wymagana (jak wynika z pytania):
hg log -l 1 -b . -T '{rev}:{node|short}\n'
Lub unikalna długa forma haszyszu:
hg log -l 1 -r . -T '{node}\n'
Symbol -b .
lub branch(.)
(kropka przy nazwie gałęzi) oznacza bieżącą gałąź katalogu roboczego i -r .
oznacza bieżącą wersję katalogu roboczego, która jest udokumentowana w hg help revsets
i hg help revisions
.
Zwróć uwagę, że jeśli występuje niezatwierdzone scalanie , .
(kropka) wyświetla tylko pierwszego rodzica dwojga rodziców grupy roboczej.
Jak zauważyli inni, nie używaj log -l
.
Służy hg log -r .
do uzyskiwania szczegółowych informacji, w przeciwieństwie do używania, hg id
którego wyjście jest ograniczone i nie obsługuje szablonów. Możesz także utworzyć mały alias here = log -r .
i użyć hg here
. Jeśli chcesz tylko hash, użyj hg log -r . --template '{node}\n'
.
W przypadku użycia TortoiseHg kliknij prawym przyciskiem myszy wiersz wersji w Środowisku roboczym i wybierz „Kopiuj hash” (zgodnie z dokumentacją ).
hg log -l 1
daje ci najnowszy zestaw zmian, niekoniecznie ten, do którego jesteś aktualnie aktualizowany! Flaga -f ogranicza wyjście dziennika hg do przodków bieżącego katalogu roboczego, więchg log -f -l1
jest bliżej tego, czego chcesz.