我正在尝试设置 Slack Subversion 集成。我在 Windows 下使用 Collabnet Edge。Slack 站点建议调用一个 Perl 脚本 ( Here )。我已经安装了Dwimperl,并编写了一个批处理文件来运行脚本,将参数传递给 perl 脚本。如果我从命令行手动调用它,这一切都可以正常工作,但是当它被 Subversion 调用时,显然出现了问题,因为我在我的 Slack 频道中看不到任何东西。
批处理文件有一行:
C:\Dwimperl\perl\bin\perl.exe C:\csvn\data\repositories\repo\hooks\slacknotify.pl %1 %2
我已经通过将 %1 和 %2 回显到文件来验证在提交后调用了该钩子,并且其行为与我预期的一样。
我的猜测是 Subversion 调用批处理文件时没有设置一些环境变量,或者类似的东西,但我对 Perl 完全不熟悉,我不知道是哪个。我通过绝对路径调用 perl 可执行文件,所以即使 %PATH% 为空白,我认为它应该可以工作。
一个相关的问题是:我该如何调试这样的问题?Collabnet 日志文件中没有我能看到的内容