在Mercurial获取拉动和更新的日期

nIc*_*IcO 6 mercurial dvcs pull

是否有可能知道何时从远程存储库中提取某个提交并且使用Mercurial更新了文件?

更准确地说,我hg pull -u几天前做了一个,现在我想知道这个拉动是否只下载了最后一次提交,或者是否有一些尚未提取的提交,让我的最后一次提取也是如此.

hg log似乎提供了提交的日期,但没有提及更新.这些信息在哪里?

Mar*_*ler 8

Mercurial不会记录此信息.Mercurial存储库只是变更集的容器,Mercurial不存储变更集如何(或何时)进入存储库.

您可以为此设置挂钩,但您必须自己构建脚本.一个非常基本的系统将是

[hooks]
pre-pull = (date; hg root; hg tip) >> ~/.pull-log
post-pull = hg tip >> ~/.pull-log
Run Code Online (Sandbox Code Playgroud)

这将~/.pull-log在每个日期之前记录当前日期,当前存储库和当前提示hg pull.拉动后,记录新的尖端.您可以构建解析日志文件的脚本,以提取有关每次拉动的信息.

hg log 似乎提供了提交的日期,但没有提及更新

是的,hg log仅关注存储的历史记录(变更集),而更新等工作副本操作不是记录历史记录的一部分.

最后,让我提一下,这是我第一次见到有人要求"拉日志".然而,相反的情况很常见:有一些脚本用于在服务器上维护"推送日志",以查看谁推送了什么以及何时推送.这是由Mozilla等人完成的.有关一些启动说明,请参阅本自述文件