Drukuj Bieżący Skrót Rewizji Mercurial?
Czy istnieje lepszy sposób wyodrębnienia bieżącego hasha rewizji w Mercurial niż
hg log -l1|grep changeset|cut -d: -f3
?
Część mojego skryptu wdrażania webapp "tagi" przesłane tarball aplikacji z unikalnym hash rewizji.
8 answers
Try:
hg id -i
Przykład:
$ hg id -i
adc56745e928
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-03-21 04:25:51
hg --debug id -i
To wyświetli długi hash, z plusem, jeśli są niezatwierdzone zmiany.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-02-15 20:48:11
Możesz użyć --template z Komendą nadrzędną, używam tego, aby uzyskać długi hash:
hg parent --template '{node}'
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-02-16 20:16:53
Podsumowując odpowiedzi i ich odpowiedzi, wydaje się, że jest to najlepszy sposób na wydrukowanie unikalnego identyfikatora (nie krótkiego formularza) z aktualna wersja :
hg log -l 1 --template '{node}\n' -r .
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-08-02 12:29:09
hg log -l 1 --template '{node|short}\n'
Zobacz docs , paragrafy "podstawy szablonów" i następne.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2010-03-21 03:26:58
Najbardziej szczegółowe polecenie nieaktualne, które ze względu na obecność --template
może drukować tylko informacje o wersji, jeśli wymagana jest zwięzłość (co sugeruje pytanie):
hg log -l 1 -b . -T '{rev}:{node|short}\n'
Lub dla unikalnej długiej formy haszu:
hg log -l 1 -r . -T '{node}\n'
-b .
lub branch(.)
(kropka dla nazwy gałęzi) oznacza bieżącą gałąź katalogu roboczego , a -r .
oznacza bieżącą rewizję katalogu roboczego, która jest udokumentowana w hg help revsets
oraz hg help revisions
.
Uwaga Jeśli istnieje niezakontraktowane połączenie, .
(kropka) wyświetla tylko pierwszy rodzic dwóch rodziców grupy roboczej.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:26:32
Jak zauważyli inni, nie używaj log -l
.
Użyj hg log -r .
, Aby uzyskać szczegółowe informacje, w przeciwieństwie do używania hg id
, którego wyjście jest ograniczone i nie obsługuje szablonów. Możesz również utworzyć mały alias, taki jak here = log -r .
i użyć hg here
. Jeśli chcesz tylko użyć hash hg log -r . --template '{node}\n'
.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-08-01 09:27:49
W przypadku użycia TortoiseHg, kliknij prawym przyciskiem myszy Wiersz revision w Workbenchu i wybierz "Copy hash" (zgodnie z documentation ).
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-07-24 16:32:36