【问题标题】:Apache Subversion pre-commit hook failsApache Subversion 预提交挂钩失败
【发布时间】:2013-11-15 09:44:49
【问题描述】:

我正在尝试为 Appache 颠覆配置一个预提交挂钩,它将对 java 文件强制执行 checkstyle。 我是 SVN 配置和钩子的新手,所以我正在使用在另一个服务器上测试过的钩子,该钩子正在另一台服务器上工作。

但是,当我在全新安装中配置它并尝试提交(创建新文件夹)时,我收到以下错误:

 A repository hook failed
svn: Commit blocked by pre-commit hook (exit code 2) with output:
/var/www/svn/mse/hooks/pre-commit: line 23: `permit-tag-write': not a valid identifier

这是第 22 行的钩子:

REPOS="$1"
TXN="$2"
SVNLOOK=/usr/bin/svnlook
JAVA=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.25.x86_64
PROJECT_NAME=mse
    permit-tag-write() 
    {
        if $SVNLOOK changed -t "$TXN" "$REPOS" | awk '{print $2}' |\
            grep -q "^tags" ; then
            /bin/echo "Cannot commit to tags" 1>&2
            exit 1
        fi
    }

【问题讨论】:

    标签: java svn svn-hooks


    【解决方案1】:

    尝试更改脚本顶部的 #! 行以将 shell 调用为 bash 而不是 sh - 在严格的 POSIX 模式下,函数名称中不允许使用连字符。

    【讨论】:

    • 感谢伊恩,成功了!没想到……我不敢相信我浪费了半天时间。
    猜你喜欢
    • 2015-07-08
    • 1970-01-01
    • 2019-06-02
    • 1970-01-01
    • 1970-01-01
    • 2020-02-06
    • 2013-08-26
    • 1970-01-01
    相关资源
    最近更新 更多