post-提交挂钩失败,没有输出

post-commit hook failing with no output

所以我在提交到存储库后收到错误 post-commit hook failed (exit code 255) with no output.。提交顺利进行,但钩子显然不起作用。钩子代码为:

#!/bin/sh

REPOS=""
REV=""
TXN_NAME=""

/usr/bin/svn update --username user --password pass /var/www/clients/clientx/weby/web >&2

exit 1

我试过将 /var/www/clients/clientx/weby/web 的权限更改为 775,但这不起作用。这是一个 ISPConfig 安装,因此 运行 提交挂钩的 user/group 是 webz:clienty,而输出文件夹的所有权是 webx:clienty。我还有 运行 没有 exit 1>&2 的代码。我只需要能够看到问题是什么,然后我就可以修复它,但是没有输出。我读过有关 STDERR 的文章,我认为我所拥有的应该有用。

我 运行 相同的命令,没有 exit 1>&2,从命令行运行,没问题。

我不确定为什么我无法获得任何输出,或者为什么 post-commit 挂钩返回错误。

所以我发现问题是 post-commit hook 甚至没有 运行。我 运行 来自终端本身的整个 post-commit 挂钩,以及 got this error。我所需要做的就是使用 vim 和 运行 命令 :set fileformat=unix 使文件成为 Unix 可执行文件。这有效地解决了这个问题。