我正在尝试设置一个 Hook 以通过邮件通知我有关新提交的信息。
由于 Mercurial hook not executing properly 中描述的问题,我似乎无法通过简单地将以下内容添加到我的 .hg/hgrc
来运行它,因为脚本不会运行:
[hooks]
changegroup = /path/to/script
作为一种解决方法,我在
hgweb.config
中添加了钩子(Hook)。它按预期运行的地方。现在由于我通过 HTTP 推送,运行脚本的实际用户是 apache
(通过运行 id
从钩子(Hook)中确定),这意味着我得到了类似的错误Not trusting file .hg/hgrc from untrusted user u, group g
我添加了
[trusted]
users = u
但同样的错误仍然存在。我究竟做错了什么?我理解这完全错误吗?感谢任何帮助!
最佳答案
您应该添加不在 hgweb.config
中的钩子(Hook)和信任 block 。但在 .hgrc
apache 用户主目录中的文件。人们通常不会想到系统用户有主目录,但他们都有,你可以在 /etc/password
中找到。 .通常类似于 /var/www
, 所以如果你创建一个 /var/www/.hgrc
文件,确保它由 Apache 用户拥有,并添加钩子(Hook)和信任,你会很高兴。
关于Mercurial 信任问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5370937/