Как просмотреть один Mercurial коммит из командной строки?
Я хотел бы посмотреть из командной строки, что было изменено в данном Mercurial коммит, аналогично тому, что можно увидеть из hg status
или из инструмента TortoiseHg. Самое близкое, что я могу получить, это hg log --stat
но это печатает дополнительные символы (то есть плюсы и минусы), и я не могу указать, какую именно ревизию я хочу посмотреть.
Мне это нужно, потому что у меня есть разработчики, у которых есть комментарии к регистрации, такие как "." или же ",". >:-(
2 ответа
Оказывается, что hg status
имеет --change
Аргумент, в котором вы можете передать номер ревизии (например, 109), относительную ревизию (т. е. -1 - последний коммит, -2 - второй-последний и т. д.) или хэш ревизии - и он выведет изменения (т. е. дополнения, удаления и модификации), что пересмотр был.
--change
изолирует эту ревизию и показывает только от этой ревизии, но заменяет --change
с --rev
показывает совокупный эффект с тех пор, как этот пересмотр в текущем состоянии.
hg log -v -r <changeset>
changeset: 563:af4d66e2bc6e
tag: tip
user: David M. Carr <****>
date: Fri Oct 26 22:46:02 2012 -0400
files: hggit/gitrepo.py tests/test-pull.t
description:
pull: don't pull tags as bookmarks
или, используя шаблоны, что-то вроде
hg log -r tip --template "{node|short} - files: {files}\n"
с выходом
af4d66e2bc6e - files: hggit/gitrepo.py tests/test-pull.t