Mercurial - hg bisect - 查看贡献变更集的简单列表

Mercurial - hg bisect - view simple list of contributing changesets

我正在查看所有已通过 hg bisect 测试的变更集。

我希望它们采用简单易读的格式,例如:

2391928719e - good
7321374343e - good
3232738237e - bad
4873487473e - bad
39732197132 - bad
39732197132 - bad

我知道 hg log -r bisect(range),但我不认为它给我状态?

bisect(range)只是给你参与的修改,是的。您的问题出在 output,而不是 revset,因此请查看 hg help template 以获取输出选项。

在那里你会发现:

$ hg help template | grep ' bisect '
    bisect        String. The commit bisection status.

-T 模板中使用:

hg log -r 'bisect(range)' -T '{node|short} - {bisect}\n'

这将为您提供参与的节点列表及其状态; goodbaduntestedignoredskipped.

之一

甚至还有一个内置模板,名为 bisect;这只是添加了 bisect: {bisect} 行的默认模板:

hg log -r 'bisect(range)' -T bisect

还有一个 shortbisect 过滤器;对于给定的二分状态,它将 return 一个字母而不是全文。这在 -G 图表中很有用,将 ui.graphnodetemplate 选项设置为 {bisect|shortbisect} 以使节点 'icon' 成为状态:

hg log -r 'bisect(range)' -G \
   --config "ui.graphnodetemplate={bisect|shortbisect}"
   -T compact

产生类似

的东西
G  1011   2391928719e   2017-09-21 15:58 +0530   author
|    first line of commit message
|
G  1010   7321374343e   2017-09-21 15:58 +0530   author
|    first line of commit message
|
B  1009   3232738237e   2017-09-21 15:58 +0530   author
|    first line of commit message
|
B  1008   4873487473e   2017-09-21 15:58 +0530   author
|    first line of commit message
|
B  1007   39732197132   2017-09-21 15:58 +0530   author
|    first line of commit message
|
B  1006   39732197132   2017-09-21 15:58 +0530   author
|    first line of commit message
~