git:在debian wheezy升级后,在post-receive hook中获取分支名称失败

时间:2015-01-07 01:28:19

标签: git deployment hook

我通过post-receive hook直接从git部署我的应用程序。 我第一次检测分支名称然后我的脚本部署到相应的路径。 我使用那里描述的分支检测方法:https://stackoverflow.com/a/12367999/3877101

一切正常,直到我的服务器必须升级到Debian 7 Wheezy。 现在我可以在git push log中看到这个错误:

remote:hooks / post-receive:6:read:Illegal option -a
remote:hooks / post-receive:9:hooks / post-receive:语法错误:重定向意外

Hook在if语句中失败了(我的代码中的第6行),但是如果没有提供STDIN,则该语句将为真(根据文档提供!-t 0)。 我没有想法,你能帮忙吗?

编辑:我获取分支名称的代码

5 if ! [ -t 0 ]; then
6  read -a ref
7 fi
8
9 IFS='/' read -ra REF <<< "${ref[2]}"
10 branch="${REF[2]}"

0 个答案:

没有答案