git pre-receive hook获取所有提交

时间:2018-10-30 19:17:02

标签: linux bash git shell unix

我需要搜索所有传入的提交文件,在grep中搜索字符串并决定是允许还是拒绝提交。

下面是我的脚本,该脚本对于单次提交非常有用,但是如果我两次提交相同的文件-它没有获取第一个提交的文件/数据,则仅是最后一次提交。有人可以帮我使所有提交工作的脚本起作用吗?

#!/usr/bin/env bash

while read oldrev newrev refname; do
    files=`git diff --name-only ${oldrev} ${newrev}`
    for file in ${files}; do
      git show $newrev:$file | grep -i "network-cidr"  
      result=$?
      if [ "$result" -eq "0" ]
      then
        echo "Found network cidr word so .. Denying the push"
        exit 1;
      fi  
    done;
done 

exit 0

0 个答案:

没有答案