我创建了一个subversion post-commit钩子,每次提交时都会发送一封电子邮件。我从/ var / svn / repos / hooks中的post-commit文件调用python脚本。
REPOS="$1"
REV="$2"
~/svnnotify.py $REV
但问题是svn commit命令需要更长的时间才能终止,因为它等待python脚本先终止。有没有办法解决这个问题?
谢谢
答案 0 :(得分:4)
尝试在调用脚本的行之后添加&符号(&
),将其放入后台并立即返回。
答案 1 :(得分:0)
调用批处理文件并在该批处理文件中执行python脚本以在后台运行,方法是在批处理文件(&)中的命令末尾添加&符号。
答案 2 :(得分:0)
可能将更新放在一个简单的队列中,该队列可以通过从cron调用的脚本运行来获取,并在队列中存在某些内容时发送消息。
队列可以是/ tmp,sqlite文件或MySQL表中的简单文件。
如果发送电子邮件的时间明显很长,那么通知脚本中的代码可能就会出现问题。将电子邮件放在本地邮件队列中不应该花那么长时间。