是否可以根据单个变更集的内容和/或描述为 hg 日志输出的每一行着色?例如,我想通过将合并行和仅涉及测试资源(无编程语言文件)的更改行变灰来帮助“真实”工作脱颖而出。
根据我们团队的习惯,我可以通过在描述中查找“基线”和“合并”这两个词来大致得到我想要的,但是文件模式和目录(用于基线)和拓扑(用于合并)会更精确。
有没有办法配置 hg 以不同的方式格式化每一行?
我认为不可能仅根据内容着色,但您可以使用 Mercurial revsets ( hg help revset
) 仅显示相关的变更集。
比如:hg log -r "not desc('merge') and not file('test/*')"
应该让你走上正轨。
以下是它如何工作的一些细节:
desc('merge')
将选择在其描述中包含合并的变更集。not desc('merge')
将过滤掉此类变更集。file('test/*')
将在测试目录中选择涉及文件的变更集。not file('test/*')
将过滤掉此类变更集。这个解决方案的最大问题是它会过滤掉测试目录和其他地方中涉及文件的变更集,我不确定是否有专门的修订集。