我想写一个Bash脚本来测试一个带有Git预推钩的分支名称的正则表达式。我已经阅读了预推文档,但是我无法将钩子插入到我的应用程序中。任何人都有任何建议。
local_branch = $(git rev-parse --abbrev-ref HEAD)
valid_chars = $(^[a-z0-9-]+$)
if [[ "$local_branch" =~ valid_chars]]; then
echo 'Failed to push. Branch is using incorrect characters. Valid Characters are lower case (a-z), numbers (0-9) and dashes(-). Please rename branch to continue'
exit 1
fi
exit 0
答案 0 :(得分:3)
运行上面的脚本会导致各种错误。我也不确定你为什么要执行^[a-z0-9-]+$
并将结果存储在valid_chars
中。尽管如此:
$
的{{1}}前缀valid_chars
应在if [[ "$local_branch" =~ valid_chars]]; then
与往常一样,确保脚本位于]]
下,名称正确,并标记为可执行。
下面的内容适用于我(我已将示例挂钩评论留在原因,因为我很懒):
.git/hooks/pre-push