Mercurial修订集中contains()谓词的用途是什么?

Mercurial修订集中contains()谓词的用途是什么?,mercurial,Mercurial,我想不出contains()谓词有用的情况。似乎file()、adds()、removes()和modifies()谓词涵盖了所有与文件相关的查询。你能举个例子说明contains()什么时候有用吗?contains关注的是内容,而不是文件名: "contains(pattern)" Revision contains pattern. 与之相比: "file(pattern)" Changesets affecting files matched by pattern. 比如: h

我想不出contains()谓词有用的情况。似乎file()、adds()、removes()和modifies()谓词涵盖了所有与文件相关的查询。你能举个例子说明contains()什么时候有用吗?

contains关注的是内容,而不是文件名:

"contains(pattern)"
  Revision contains pattern.
与之相比:

"file(pattern)"
  Changesets affecting files matched by pattern.
比如:

hg log -r 'contains("spam")'

将显示添加或删除字符串垃圾邮件的所有更改集。请注意,类似的
关键字
命令检查提交消息,而不是内容。

您写道:“Contains查看内容,而不是文件名”:我一定是做错了什么,因为这不是我在这里尝试的。对我来说,只有当我使用文件模式作为参数时,它才会输出一些东西。同样在TortoiseHG中,这个谓词显示在“文件模式”类别中。我对contains()的理解是,它输出repo中包含与给定文件模式匹配的文件的所有修订。Hrm,我认为它类似于“hg grep”命令。我再看看。