Mercurial有一种名为revsets的特定于域的语言,允许用户指定修订集。
例如,您可能希望列出尚未合并到分支default
中的补丁:
hg log -r "all() - ancestors('default')"
作为一个更复杂的示例,上面的链接提供了在修订标记为1.3
和修订标记为1.5
之间列出变更集的示例,其中提到了“bug”并影响了目录中的文件{{ 1}}:
hgext
revset语言非常丰富,允许根据日期,用户名,提交消息,是否存在特定远程位置的提交等来选择变更集。
git是否有相同的机制来查询变更集,无论是在核心程序中还是作为扩展名提供?
答案 0 :(得分:2)
列出除默认主分支之外的所有提交,就像我假设第一个例子那样:
git log --all --not master
要获得与第二个示例相同的结果:
git log 1.3...1.5 --grep="bug" -- hgext