【问题标题】:How to create multiple post-commit hooks on Visual SVN如何在 Visual SVN 上创建多个提交后挂钩
【发布时间】:2014-02-27 10:16:43
【问题描述】:

我的服务器上运行着 VisualSVN 服务器,并且我创建了一个提交后挂钩,以便在有人提交代码时向我发送电子邮件,使用此处概述的步骤:http://www.visualsvn.com/support/topic/00018/

但是,如果已提交 SVN 中的某个项目,我希望能够将电子邮件发送给一个人,但如果另一个项目已提交,其他人应该会收到一封电子邮件。

如何根据提交的项目创建多个提交后挂钩以向不同的人发送电子邮件?

【问题讨论】:

    标签: svn visualsvn-server post-commit svn-hooks


    【解决方案1】:

    您可能想查看我的提交后Watch script。在这种情况下,这将消除您对多个 post-commit 挂钩的需要。

    此脚本将根据更改的内容向多个用户发送电子邮件。该脚本的主要目的是允许用户设置自己的手表。用户可以使用globregex 模式指定文件或目录。您可以使用我的pre-commit 脚本来防止用户更改其他用户的监视文件。这样一来,当他们需要这些类型的通知时,没有人需要打扰您,这会缩短您的 Candy Crush 时间。

    用户还可以设置他们希望手表转到哪些电子邮件帐户。用户可以将这些通知设置为发送到多个电子邮件帐户,或者如果他们更喜欢这样的通知,甚至可以发送到与 SMS、IM、Twitter 或 Facebook 帐户关联的电子邮件帐户。

    该挂钩使用 Perl,但标准 Perl 安装无需添加任何额外模块即可工作。它也应该适用于从 5.8.8 开始的所有 Perl。 Windows 用户可以免费下载安装最新版本的Perl,因为它是开源的。

    【讨论】:

      【解决方案2】:

      我想通了。我只是简单地进入了我最初的钩子下面的下一个钩子,用线将它们分开。例如:

          "%VISUALSVN_SERVER%\bin\VisualSVNServerHooks.exe" ^
          commit-notification "%1" -r %2 ^
          --from svn@mycompany.co.za --to me@mycompany.co.za ^
          --smtp-server mail.mycompany.co.za ^
          --detailed-subject
      
         "%VISUALSVN_SERVER%\bin\VisualSVNServerHooks.exe" ^
          commit-notification "%1" -r %2 ^
          --from svn@mycompany.co.za --to someone_else@mycompany.co.za ^
          --smtp-server mail.mycompany.co.za ^
          --detailed-subject
      

      【讨论】:

      • 主题显示为由 USER 更新的 R127。 R127 是修订号而不是项目名称。如何在主题上加上项目名称?
      • 我不确定。我目前在“更改的路径”处查看电子邮件通知的正文,以查看哪些项目已更改。也许你不能把它放在主题中,如果那个提交影响了许多路径/项目怎么办。它会放在哪个主题上?如果你找到方法,请告诉我。
      • 如果您关注link you posted,它会显示To enable it email notifications on every commit...,即全局提交级别。您也可以通过右键单击项目 > 属性 > 挂钩 > 提交后挂钩(编辑)在每个项目级别执行此操作。如果您希望将所有项目和电子邮件都列在一个脚本中,则功能不会那么强大,但如果您想为每个脚本自定义主题等,则功能足够强大。
      猜你喜欢
      • 2015-10-09
      • 2014-08-10
      • 2016-06-02
      • 2012-10-18
      • 1970-01-01
      • 1970-01-01
      • 2015-07-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多