post-commit hook作为svn中的用户运行

时间:2009-10-25 09:59:36

标签: svn post-commit

在作为SYSTEM运行的Windows机器上运行Apache post-commit.bat应该使用什么用户名和密码?

我正在尝试将内容复制到目录,以便在网络服务器上的开发人员版本上进行测试,但似乎没有它正常工作。

1 个答案:

答案 0 :(得分:2)

钩子脚本将由服务器启动,因此您只需要确保相应的用户(SYSTEM for you)

  • 对存储库的读/写访问权限(应该已经是这种情况)
  • 读取/执行对钩子脚本的访问

根据脚本的功能,您可能需要更多内容,例如,如果它创建了日志 - 如果它通常访问其他资源。这可能是你遇到的问题。

此外,如果钩子脚本是.bat,则需要COMSPEC环境变量来查找shell(我在Windows XP中遇到此问题,主要是由于配置错误)。此变量通常定义为C:\Windows\system32\cmd.exePATH当然也很重要。

请注意,这可能会产生误导,当您使用其他用户登录测试脚本时,您可能会有另一个访问权限,而您的服务器身份则不会。


修改:如果您不确定它们包含哪些内容,则可以在批处理脚本的开头设置或扩展重要的环境变量,例如PATHCOMSPEC与服务器帐户。例如,

SET ComSpec=%SystemRoot%\system32\cmd.exe
SET PATH=%PATH%;C:\Tools\SVN\svn-win32-1.4.6\bin

有时它比在黑暗中更容易并且试图修改服务器的帐户。