我的项目使用hgext.notify。目前,incoming.notify =每个变更集上的单独邮件。考虑改变组通知,但即使包含有关每个变更集的信息,也只需要一个大的电子邮件。
问题在于:
我的工作作风是“早点检查”。我做了许多小签到,通常在树枝上。任务分支。最终整合。
我的队友不喜欢在我的任务分支上查看所有签到的消息。
我们正在考虑使用像collapse或histedit这样的历史编辑扩展来减少冗长 - 但我不喜欢丢失历史。我只是不想用每个变化集来打扰他们。
问:有没有办法,现有钩子的一些配置,或者一些备用的hg扩展,可以设置为通知为folllws;每个更改组一条消息(没关系)
单个用户为每个更改组提供的消息 - 而不仅仅是所有分支变更集消息的串联
仅过滤掉trunk的最大消息(hg用语中的默认分支)。即保留分支变更集消息,但不发送电子邮件。
(注意:我的推送通常涉及分支上的几个变更集,然后合并到默认值。因此仅根据受影响的分支来过滤整个变更组是不够的。)
< / LI>不是在分支和分支上的每个更改之间进行diffstats,而是在主干上的“重要”变更集之间(默认分支) - 这可能是主干上的最大变化。
答案 0 :(得分:1)
我担心不存在这样的扩展。通知扩展只是发送电子邮件的基本方式,只需要一点空间进行自定义。
听起来你对自己想要的东西有一个特别的想法。我建议您看看是否可以将其表示为revision set,然后在hg log
挂钩中使用changegroup
。将输出管道传输到mail
,您就可以获得一个非常简单的通知扩展,您可以自定义内容!
我所说的是,通知扩展并不复杂,在很多情况下,它可以被hg log
的合适调用替换。如果您想要将输出更改为hg log
或hg log -v
以外的输出,您甚至可以hg log --patch
使用default
。
棘手的部分(以及从您的问题中不完全清楚的部分)是过滤掉完全正确的变更集。你在上面的第4点提到了“重要的”变更集,但我并不完全确定是什么让变更集变得“重要”。如果从功能分支合并到hg log -r "$HG_NODE:tip and children(not branch(default)) and branch(default)"
时很重要,那么这样的事情可能就是一个开始:
default
通过获取非default
变更集的子变更集并与{{1}}上的变更集相交,我们可以准确找到集成了要素分支的合并点。
我很抱歉答案是如此通用,但我认为你最好为自己想要的东西编写一个小的自定义shell脚本。