git“ pre-push”钩子stdin为空

时间:2019-03-12 01:35:39

标签: bash git githooks

我正在尝试创建一个预推钩子,以防止用户将其推到所在分支以外的其他分支上。

基于pre-push.sample(以及我已阅读的各种线程),看来我应该能够通过stdin读取要推送的本地分支和要推送的远程分支: / p>

while read local_ref local_sha remote_ref remote_sha
do
...
done

但是,当我这样做时,local_ref和其他变量为空(即使运行未经编辑的示例挂钩,它也永远不会进入循环)。

我需要做一些配置或其他步骤来访问stdin上的变量吗?

我正在使用git version 2.17.1

1 个答案:

答案 0 :(得分:0)

首先,请确保您的钩子已被调用。
这意味着:

  • 其名称应为pre-push(不得为.sample
  • 它应该是可执行的(除非您在Windows上,否则默认情况下它是可执行的)
相关问题