SVNNotify:当 svn 日志消息中存在特殊关键字时,不发送通知电子邮件

发布于 2024-12-09 06:01:10 字数 302 浏览 1 评论 0原文

我正在使用 SVNNotify 发送提交后通知消息。有时我犯了一个打字错误,我想再次提交,但我不想用另一封不重要的电子邮件轰炸我的用户。因此,如果有一个特殊的指令来告诉 SVNNotify 这次不需要发送任何电子邮件,那就太好了。通过 svn 日志消息发送的内容:

svn commit -m 'Typo (_no_email_)'

因此 SVNNotify 会解析 _no_email_ 并理解这次不需要通知。

有谁知道 PERL 和/或 SVNNotify 在 Notify.pm 上执行这样的黑客攻击吗?

谢谢 !!!

I am using SVNNotify to send post-commit notification messages. Sometimes I do a typo and I want to commit again but I do NOT want to bombard my users with yet another unimportant email message. So It would be nice to have a special directive to tell SVNNotify that it does NOT need to send any email this time. Something sent through the svn log message:

svn commit -m 'Typo (_no_email_)'

So SVNNotify would parse _no_email_ and understand that it does NOT need to notify this time.

Does anyone know PERL and/or SVNNotify to perform such a hack on Notify.pm?

Thanks !!!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

浮生面具三千个 2024-12-16 06:01:10

您只需在 /usr/local/share/perl/5.10.1/SVN/Nofity.pm 上添加以下行:

# Abort if log message ends with _
exit if ($self->{message}[0] =~ /_\s*$/);

在此循环内的第 1299 行:

# Add the first sentence/line from the log message.
unless ($self->{no_first_line}) {

    # Abort if log message ends with _
    exit if ($self->{message}[0] =~ /_\s*$/);

    # Truncate to first period after a minimum of 10 characters.
    my $i = index substr($self->{message}[0], 10), '. ';
    $self->{subject} .= $i > 0
        ? substr($self->{message}[0], 0, $i + 11)
        : $self->{message}[0];
}

You can just add the following line on /usr/local/share/perl/5.10.1/SVN/Nofity.pm:

# Abort if log message ends with _
exit if ($self->{message}[0] =~ /_\s*$/);

On line 1299 inside this loop:

# Add the first sentence/line from the log message.
unless ($self->{no_first_line}) {

    # Abort if log message ends with _
    exit if ($self->{message}[0] =~ /_\s*$/);

    # Truncate to first period after a minimum of 10 characters.
    my $i = index substr($self->{message}[0], 10), '. ';
    $self->{subject} .= $i > 0
        ? substr($self->{message}[0], 0, $i + 11)
        : $self->{message}[0];
}
妄断弥空 2024-12-16 06:01:10

SVN::Notify 有一种创建自定义过滤器的方法。查看 SVN::Notify::Filter 的文档。它看起来非常简单,并且有很多例子。

perldoc SVN::Notify::Filter

SVN::Notify has a way to create custom filters. Have a look at the documentation for SVN::Notify::Filter. It looks pretty straightforward and there are many examples.

perldoc SVN::Notify::Filter
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文