在预提交钩子中发出警告

我想在预先提交的钩子中发出警告,但不中止提交。 但是,似乎svn缓冲输出,并只显示它,如果检查中止。

是否可以不中止地输出警告?

警告实际上可以在post-commit挂钩中通过使其失败来实现(使用$? != 0 ,就像使用pre-commit挂钩一样)。

所以在我的情况下,我做了我使用的命令返回1的错误和2的警告,我在调用前和后提交钩子。

在预先提交的钩子中,我有:

 /usr/bin/augeas-validator $(svnlook changed -t "$TXN" "$REPOS" | awk '/^[^D].*$/ {print $2}') if [ $? = 1 ]; then exit 1 fi 

而在提交后,我有:

 /usr/bin/augeas-validator $(svnlook changed -r "$REV" "$REPOS" | awk '/^[^D].*$/ {print $2}') || exit 1 

因此,错误阻止了提交,而警告只会提交提交后钩子错误,这不会阻止提交,但仍会向用户提供STDERR的内容。

您可以使用mail命令通过电子邮件发送警告。