小编Opp*_*pps的帖子

Git 预提交钩子检查字符串并退出代码 1 如果字符串存在

我试图让一个预提交钩子工作,检查交错文件并读取差异以检查几个字符串。如果字符串存在,则提交必须失败。

#!/bin/bash
#import os

echo "Running pre-commit hook" 
checks=os.environ["APPSETTING_DEVPASSWORD"],os.environ["APPSETTING_DEVUSER"],os.environ["APPSETTING_DEVPASS_ELMAH"]



git diff --cached --name-status | while read x file; do

      if [ "$x" == 'D' ]; then continue; fi
    for word in $checks
    do
        if egrep $word $file ; then
            echo "ERROR: Disallowed expression \"${word}\" in file: ${file}"
            exit 1
        fi
    done
done || exit $? 
Run Code Online (Sandbox Code Playgroud)

即使文件中存在字符串,它仍然提交文件。任何指导将不胜感激。我对 bash 相当陌生。

git bash pre-commit-hook

5
推荐指数
1
解决办法
1164
查看次数

标签 统计

bash ×1

git ×1

pre-commit-hook ×1