コミット中のテキスト ファイルに対して次のスクリプトを実行したいと考えています。
# Send the commands H and w to ed
# ed will append newline if the file does not end in one
printf "%s\n" H w | ed -s $1
# Strip trailing whitespace
sed -i 's/[ \t]*$//g' $1
# Convert tabs to 4 spaces
sed -i -r "s/\t/ /g" $1
Subversion には start-commit フックと pre-commit フックがあるようですが、上記のスクリプトでテキスト ファイルを処理する方法に関するドキュメントを参照できません。