あなたが求めているものとはまったく異なりますが、おそらく、Subversion のコミット フックを調べる必要がありますか?
行頭にタブを含むコード、またはタブをまったく含むコードのチェックインをブロックするフックを作成できます。
Subversion サーバーのリポジトリ ディレクトリには、hooks というディレクトリがあります。「pre-commit」と呼ばれる実行可能なものをそこに置くと、何かがコミットされる前に実行されます。必要に応じて、コミットをブロックするステータスを返すことができます。
構文エラーがチェックインされているphpファイルを停止する必要があるのは次のとおりです。
#!/bin/bash
REPOS="$1"
TXN="$2"
PHP="/usr/bin/php"
SVNLOOK=/usr/bin/svnlook
$SVNLOOK log -t "$TXN" "$REPOS" | grep "[a-zA-Z0-9]" > /dev/null
if [ $? -ne 0 ]
then
echo 1>&2
echo "You must enter a comment" 1>&2
exit 1
fi
CHANGED=`$SVNLOOK changed -t "$TXN" "$REPOS" | awk '{print $2}'`
for LINE in $CHANGED
do
FILE=`echo $LINE | egrep \\.php$`
if [ $? == 0 ]
then
MESSAGE=`$SVNLOOK cat -t "$TXN" "$REPOS" "${FILE}" | $PHP -l`
if [ $? -ne 0 ]
then
echo 1>&2
echo "***********************************" 1>&2
echo "PHP error in: ${FILE}:" 1>&2
echo "$MESSAGE" | sed "s| -| $FILE|g" 1>&2
echo "***********************************" 1>&2
exit 1
fi
fi
done