Mercurial-wszystkie pliki, które zmieniły się w changeset?
Jak można określić wszystkie pliki, które zmieniły się w danym zestawie zmian?
Nie szukam w tym przypadku Diffa, tylko listę Dodaj/usuń / modyfikacje.
hg log -vprX
robi listę diffów, ale chcę tylko pliki.
7 answers
Jeśli chcesz wyświetlić listę tylko plików, które się zmieniły, powinieneś użyć polecenia " status" Poniżej znajduje się lista zmian w plikach w revision REV
hg status --change REV
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-09-24 17:27:16
Po Prostu Usuń p
z hg log -vpr
wyświetli listę plików. -p
oznacza show patch. Możesz również użyć szablonu , aby sformatować wyjście według własnego gustu.
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-09-24 18:44:23
Wiem, że pytanie dotyczy pojedynczego zestawu zmian, ale jeśli chcesz, aby wszystkie pliki zostały zmodyfikowane dla szeregu zestawów zmian, możesz zrobić
hg status --rev 1 --rev 10 -m
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-10-31 20:15:08
Znalazłem to pytanie poprzez Googlowanie dla podobnej koncepcji. Aby wyświetlić wszystkie pliki, które zmieniły się przez Zakres zestawów zmian, jest to tak proste, jak:
hg log -r [start rev]:[end rev] --template "{file_mods}{file_adds}\n" | sed -e 's/ /\n/g' | sort -d | uniq
-
hg log -r [start rev]:[end rev] --template "{file_mods}{file_adds}\n"
wyświetli listę KAŻDEGO pliku zmienionego lub dodanego w każdym zestawie zmian, od [start rev] do [end rev], z plikami każdego zestawu zmian w nowej linii. Zamień{file_mods}{file_adds}
na{files}
, aby wyświetlić wszystkie pliki zmodyfikowane, dodane lub usunięte. -
sed -e 's/ /\n/g'
podzieli wszystkie pliki do wyświetlenia w osobnych liniach i -
sort
posortuje listę za Ciebie, abyśmy mogli filtrować ją za pomocą uniq -
uniq
filtruje listę w celu usunięcia duplikatów-plików, które zmieniły się w więcej niż jednej wersji.
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
2014-11-01 20:31:13
Aktualna Zatwierdzona Rewizja
hg status --change .
.
jest skrótem od bieżącego rev, podobnie jak @HEAD
w Git
Aktualna Wersja
hg status
Arbitralna Zatwierdzona Rewizja
hg status --change REV_ID
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-05-15 17:27:34
Wiem, że to pytanie jest stare i dziwi mnie, że nikt nie zaproponował zmodyfikowanego kodu w postaci OP. mam listę zmodyfikowanych/dodanych / usuniętych plików (nie oznaczonych, które są które) po prostu uruchamiając hg log -v
. Albo tego, czego potrzebowałem hg log -v -l5
, aby zobaczyć pliki, które zostały zmodyfikowane/dodane/usunięte w ostatnich 5 commitach (w tym te, których jeszcze nie wcisnąłem do repo).
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-12-21 14:39:08
Jeśli jesteś jak większość sklepów, używasz systemu biletowego do śledzenia zmian. Jeśli znasz numer paragonu i chcesz znaleźć wszystkie commity powiązane z tym paragonem( zakładając, że umieścisz numer paragonu w wiadomości commit), możesz użyć:
hg log -k TICKET_NUMBER
To wyświetla wszystkie wersje związane z paragonem. Jednak nie wymienia plików. Możesz użyć jednej z powyższych odpowiedzi, aby następnie uzyskać listę plików powiązanych z wersjami.
To make it prostsze, łącząc informacje z poprzednich odpowiedzi, możesz wykonać następujące czynności, aby wyszukać zmiany, w tym zmienione pliki:
hg log -vk TICKET_NUMBER
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
2015-07-21 14:33:14