1

我正在尝试为 VisualSVN 服务器配置内置的提交后挂钩。我直接通过 VisualSVN 服务器管理器配置了 post-commit 脚本,如下:

"%VISUALSVN_SERVER%\bin\VisualSVNServerHooks.exe" ^
    commit-notification "%1" -r %2 ^
    --from aaron@posscribble.com --to aaron@posscribble.com ^
    --smtp-server mail.posscribble.com

后提交失败并显示以下错误消息:

提交后错误

有人可以帮我理解为什么 VisualSVN 引用 C:\Development\Source\format 路径吗?我还尝试将环境变量(即 %VISUALSVN_SERVER%)替换为 VisualSVNServerHooks.exe 所在目录的直接路径,但无济于事。我在这里做错了什么?

4

2 回答 2

2

在搜索网络论坛之后,有人建议将第一个参数的括号去掉,即使存储库的路径中有括号,所以它只是 %1 并且解决了问题。工作的 VisualSVN 提交后脚本如下:

"%VISUALSVN_SERVER%\bin\VisualSVNServerHooks.exe" ^
    commit-notification %1 -r %2 ^
    --from aaron@posscribble.com --to aaron@posscribble.com ^
    --smtp-server mail.posscribble.com
于 2013-10-25T13:19:14.397 回答
0

该问题与提交后挂钩脚本完全无关。该错误表明存储库缺少“格式”文件。预计此文件存在并包含此文件系统的格式号。那么文件存在吗?

如果文件丢失,您将无法对存储库执行任何操作:您无法使用 Subversion 客户端访问存储库,无法运行svnadmin命令,并且挂钩脚本可能会失败(至少在最新的 SVN / VisualSVN Server 版本上) )。

解决此问题的最简单方法是从另一个存储库获取格式文件并将其复制到“C:\Development\Source\”。但是,您必须确保复制的文件具有正确的Source存储库格式编号。

于 2013-10-24T15:47:14.327 回答