我想在我的一个 git 存储库中使用git-multimail作为 post receive hook(没有使用 gitolite)。不幸的是,我无法让它工作,而且我几乎没有任何使用 Python 的经验。
到目前为止我做了什么:
- 我在文件中添加了以下块
project.git/config
:
[multimailhook]
mailingList = email@example.com
from = email@example.com
envelopeSender = email@example.com
mailer = smtp
smtpServer = smtp.mydomain.com
smtpUser = myUser
smtpPass = myPassword
请注意,我不知道mailer
变量中定义的“smtp”是否安装在我的机器上。
- 我将当前
git_multimail.py
文件复制到project.git/hooks
. - 我创建了一个
project.git/hook/post-receive
包含以下内容的文件。该文件是可执行的,我从https://github.com/git-multimail/git-multimail/blob/master/git-multimail/post-receive.example复制了这个
#! /usr/bin/env python
import sys
import os
import git_multimail
config = git_multimail.Config('multimailhook')
try:
environment = git_multimail.GenericEnvironment(config=config)
#environment = git_multimail.GitoliteEnvironment(config=config)
except git_multimail.ConfigurationException:
sys.stderr.write('*** %s\n' % sys.exc_info()[1])
sys.exit(1)
mailer = git_multimail.choose_mailer(config, environment)
git_multimail.run_as_post_receive_hook(environment, mailer)
发生什么了:
当我推送更改时,project.git/hooks/git_multimail.pyc
会创建一个文件,但不会发送电子邮件。
使用https://github.com/git-multimail/git-multimail/blob/master/doc/troubleshooting.rstGIT_MULTIMAIL_CHECK_SETUP=true python git_multimail.py
上的描述进行配置测试告诉我git-multimail seems properly set up
有没有办法记录脚本输出之类的东西?我能做些什么来找出什么不起作用?我的文件中甚至有错误吗?
提前致谢。