5

TeamCity では、次のトリガー (以下にリスト) を使用して TFS に対して構成された 2 つの個別のビルドがあります。

Build 1:
+:Folder1/Folder2/Folder3/FilePrefix\*\*
+:Source/\*\*
+:Tests/\*\*

Build 2:
+:Folder1/Folder2/\*\*
-:Folder1/Folder2/Folder3/FilePrefix\*\*
-:Tests/\*\*
-:Source/\*\*

ファイルに変更を加えると、両方のFolder1/Folder2/Folder3/FilePrefixビルドがトリガーされることがわかります。ドキュメントには次のように記載されています

変更内の各ファイルに対して、最も具体的なルールが検出されます (最長のファイル パスに一致するルール)。ビルドは、一致する "include" ルールを持つファイルまたは一致するルールがないファイルが少なくとも 1 つある場合にトリガーされます。

これは、最も具体的なルールのみが優先されることを意味しませんか? ビルド 2 がこのファイルを除外しないのはなぜ-:Folder1/Folder2/Folder3/FilePrefix**ですか? +:Folder1/Folder2/**が無視ルールをオーバーライドしているようです。

4

1 に答える 1

2

数週間前にこれに遭遇し、最後のワイルドカードを「.」として指定する必要があることがわかりました。否定ステートメントの「*」の代わりに。

したがって、build2 のトリガー ルールは次のようになります。

+:Folder1/Folder2/\*\.
-:Folder1/Folder2/Folder3/FilePrefix\*\.
-:Tests/\*\.
-:Source/\*\.
于 2013-08-20T14:33:56.530 に答える