4

我创建了一个 subversion post-commit 钩子,用于在每次提交时发送一封电子邮件。我从 /var/svn/repos/hooks 中的 post-commit 文件调用 python 脚本。

REPOS="$1"
REV="$2"

~/svnnotify.py $REV

但问题是 svn commit 命令需要更长的时间才能终止,因为它等待 python 脚本首先终止。有没有办法解决 ?

谢谢你

4

3 回答 3

4

尝试&在调用您的脚本的行之后添加一个与号 ( ) 以将其置于后台并立即返回。

于 2009-11-21T05:58:02.753 回答
0

也许将更新放在一个简单的队列中,该队列被从 cron 调用的脚本运行收集起来,如果队列中有东西,则发送消息。

队列可以是 /tmp 中的简单文件、sqlite 文件或 MySQL 表。

如果发送电子邮件需要很长时间,则可能是通知脚本中的代码有问题。将电子邮件放入本地邮件队列应该不会花费那么长时间。

于 2009-11-21T06:08:06.917 回答
0

调用一个批处理文件,并在该批处理文件中通过在批处理文件( & )的命令末尾添加与号来执行 python 脚本以在后台运行。

于 2009-11-21T05:57:41.617 回答