Я пытаюсь заставить обработчик перед фиксацией работать, проверять файлы с разметкой и читать разницу, чтобы проверить наличие нескольких строк.Если строки существуют, коммит должен завершиться неудачей.
#!/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 $?
Он по-прежнему фиксирует файлы, даже если в них есть строки.Любое руководство будет с благодарностью.Я новичок в bash.