我创建了一个exe文件,它将打印以控制它接收的第一个和第二个参数。
在SVN post-commit hook中我写道:
PATH_TO_FILE\print.exe "%1" "%2"
当我办理登机手续时,它会被卡住。
%1是PATH
%2是修订号
修改
我的问题的答案是可执行文件应该位于SVN服务器的“bin”目录中,而不是存储库的hooks文件夹中。
谢谢大家, 奥德。
答案 0 :(得分:1)
Print将文件名放在打印机上。您正在提供我假设您的描述的目录。尝试将某些内容写入文件。
echo "%1" "%2" > c:\temp\log.txt
答案 1 :(得分:0)
我们在谈论什么操作系统?如果是Windows,我认为你不应该在参数周围加上引号(“)。
什么是“PATH_TO_FILE”?和环境变量?它的价值是什么?你有没有检查它是否包含最终的反斜杠?更改环境变量后重新启动了吗?它是系统范围还是用户级环境变量。请记住,如果您将SVN服务器作为服务运行,则它位于不同的用户之下,因此可能不会为该用户定义env var。你为什么不直接把完整的路径直接用于测试它与不正确的环境变量无关。
你说“它卡住了”你有错误吗?究竟发生了什么?关于它如何失败的更多细节可能有所帮助。
如果这是您正在使用的Windows,您可以通过执行以下操作将任何错误重定向到文件:
PATH_TO_FILE\print.exe %1 %2 > c:\output.txt
这是普通的SVN服务器还是使用visualSVN服务器?
答案 2 :(得分:0)
因为我看到print.exe,所以必须是Windows环境。我只是回应下面的论点。
echo %1 %2 >&2
这似乎打印到命令提示符没有问题。