1

私のbuild.xmlには、Phingで処理する準備ができている次のターゲットがあります。

<target name="syntax-test">
    <exec command="git diff --cached --name-only --diff-filter=ACMRTUXB" dir="./" escape="false" output="${TMP_DIR}/changed_files" />
    <fileset id="CHANGED_FILES" dir="./" includesfile="${TMP_DIR}/changed_files" />
    </exec>

    <phplint haltonfailure="true" level="warning" deprecatedAsError="true">
        <fileset refid="CHANGED_FILES" />
    </phplint>
</target>

私は多くのツールを持っているので、すべてのファイルの小さなサブセットの上でのみ実行したい-追加/変更されたものなどでのみ実行したいので、これらをフィルタリングする必要があります。

これは正常に機能します。

各ツールは非常に特殊であり、特定のファイルのみをチェックするために使用できます(.phpをチェックするためのphplint.xmlをチェックするためのxmllintなど)。

これらを除外するにはどうすればよいですか?

パターンセットまたはインクルードを適用しようとすると、新しいルールのみを使用するように強制されているようです(includesfileパラメーターは無視されます)。

4

2 に答える 2

1

FileSetはfilenameをネストされたタグとして受け入れるため、次のように使用できます。

<fileset id="CHANGED_FILES" dir="./" includesfile="${TMP_DIR}/changed_files">
    <filename name="**/*.php" />
</fileset>
于 2012-08-06T05:38:31.553 に答える
0

私にとっては * /*.phpの代わりに * .php が動作します

<fileset id="CHANGED_FILES" dir="./" includesfile="${TMP_DIR}/changed_files">
    <filename name="**.php" />
</fileset>
于 2013-09-05T09:16:27.073 に答える