我正在尝试在SVN中构建预提交脚本,并且我想在修改过的行上仅对(而不是整个文件)运行PHP_CodeSniffer。到目前为止,我有这个脚本:

#!/bin/sh

REPOS="$1"
TXN="$2"

# Make sure that the log message contains some text.
SVNLOOK=/usr/bin/svnlook
$SVNLOOK log -t "$TXN" "$REPOS" | \
   grep "[a-zA-Z0-9]" > /dev/null || exit 1

# Check for code validation before commiting the script using PHP_CodeSniffer
/tmp/pear/download/PHP_CodeSniffer-1.4.3/scripts/phpcs-svn-pre-commit  "$REPOS" -t "$TXN" >&2 || exit 1

# All checks passed, so allow the commit.
exit 0

最佳答案

CodeSniffer 3.0.0发行以来,2017年就有new --cache option

或者,您可以使用EasyCodingStandard,默认情况下会执行此操作

09-03 22:50