在一个mercurial repo中,我可以运行hg up {revision}
来更改我的工作目录的修订版,但是我可以运行什么命令来发现我正在查看的修订版本?
答案 0 :(得分:70)
答案 1 :(得分:23)
除了hg parents
之外,您还可以使用hg summary
获取有关当前状态的最重要摘要信息。它看起来像这样:
% hg summary
parent: 13051:120eccaaa522 tip
encoding: fix typo in variable name
branch: default
commit: 2 unknown (clean)
update: (current)
mq: 20 unapplied
并且一眼就告诉我,我在修订版13051,我在默认分支上有一个干净的工作副本(虽然有2个未跟踪的文件)。这是我的存储库中的最新修订,因此更新不会做任何事情。最后,我有20个未应用的MQ补丁。
答案 2 :(得分:15)
hg identify
(简称hg id
)将打印父哈希值的缩写(缩写为12个字符的标识符),如果您的工作副本中有任何未提交的修改,则会显示+
要获得完整的哈希值,您可以使用hg identify --debug
代替。
答案 3 :(得分:4)
另一种选择是启用graphlog extension,然后运行hg glog
。你会看到这样的输出(请记住我使用模板来改变输出):
o changeset: 200:c8c281cf0a6d
|\ branch: craig-aspinall
| | tag: tip
| | parent: 199:1a692f3b9134
| | parent: 187:2d0e0ed9d31c
| | user: Craig Aspinall
| | date: Tue Nov 23 21:36:30 2010 +1000
| | summary: Merged latest changes
| |
| o changeset: 199:1a692f3b9134
| | branch: craig-aspinall
| | parent: 123:1dc90c9b7ede
| | user: Craig Aspinall
| | date: Tue Nov 23 21:35:22 2010 +1000
| | summary: Final solutions to L04
| |
| | @ changeset: 198:78b488c2607d <==== This is where I am currently.
| | |\ branch: OJ
| | | | parent: 119:70ec3d9e4d3a
| | | | parent: 197:44bac809d37d
| | | | user: OJ Reeves
| | | | date: Tue Nov 23 20:19:07 2010 +1000
| | | | summary: Merged with the mainline
| | | |
| | | o changeset: 197:44bac809d37d
| | | | user: Tony Morris
| | | | date: Tue Nov 23 18:40:03 2010 +1000
| | | | summary: Started parallel anagrams
| | | |
| | | o changeset: 196:92241b51970b
| | | | user: Tony Morris
| | | | date: Tue Nov 23 17:52:32 2010 +1000
| | | | summary: Started parallel anagrams
| | | |
带有@
符号的节点/修订版就是您所在的位置。
答案 4 :(得分:1)
由于--template
的存在,最具体的非DEPRECATED命令只能在需要简明时打印修订信息(如问题所暗示的那样):
hg log -l 1 -b . -T '{rev}:{node|short}\n'
或者:
hg log -l 1 -b . -T '{rev}\n'
或者:
hg log -l 1 -r . -T '{rev}\n'
或者对于唯一的长形式哈希:
hg log -l 1 -r . -T '{node}\n'
-b .
或branch(.)
(分支名称为点)means the current working directory branch和-r .
表示当前工作目录修订版,hg help revsets
位于{{1} }和documented。
请注意,如果有hg help revisions
,则.
(点)仅显示工作组中两位家长的uncommitted merge。
答案 5 :(得分:1)
这也很有用,
hg log -v -r `hg id -i`