2017-04-04 11 views
0

私たちはgithub enterpriseでteamcityを使用しています。そして、私たちは、マージ要求とコミットを実行するように設定しました。しかし、gitは、ビルドをトリガするファイル変更が0のマージに対して、チームシティコミットメッセージを送信し続けます。ファイルが変更された場合のみTeamcityでビルドをトリガする方法はありますか?

は例えば、これはビルドをトリガーします:

enter image description here

I've found the documentation here for creating a trigger filter

しかし、私は更新されたファイルの数のフィルタを作成する方法が表示されません。

私は、これは支店でビルドをトリガー

は、VCSトリガが枝を十分に認識し、一度、チェックインは、分岐で検出されたビルドをトリガーします をマージ構築する原因となっているものだと思います。 変更が1つのブランチから別のブランチにマージ/早送りされるとき、厳密に言えば、実際のコードに変更はありません。デフォルトでは、VCSのトリガーは、次のように動作:

- When merging/fast forwarding of two non-default branches: the changes 
    in a build are calculated with regard to previous builds in the same 
    branch, so if there is a build on same commit in a different branch, 
    the trigger will start a build in another branch pointing to the same 
    commit. 
- If the default branch is one of the branches in the 
    merging/fast-forwarding, the changes are always calculated against 
    the default branch, if there is a build on same revision in the 
    default branch, TeamCity will not run a new build on the same 
    revision. 

それは別のブランチでのマージによってトリガーされる更新されていない枝の上に構築という、注目に値します。

答えて

1

おそらく、チェックアウトルールを使用します。それ以外の場合は、0ファイルのマージコミットでビルドを実行することは適切な処置のようです。コミットはチェックアウトディレクトリの内容を変更し、ビルドをトリガする必要があります。

TeamCityチェックアウトルールでチェックアウトするものを制限すると、TeamCityはチェックアウトされたディレクトリの内容を実際に変更した場合(ディレクトリ内のファイルをマージすることによって)、マージコミットを0ファイルのみで表示します。 TeamCityに完全に知られており、潜在的にチェックアウトに影響する可能性があります。

最新のTeamCityリリース(現在は10.0.5)を使用していない場合は、更新することが理にかなっています。チェックアウトされたファイルに影響しないマージコミットがまだ表示され、TeamCityでVCSが設定される前に作成されたコミットをマージしていない場合は、詳細をTeamCity supportに報告することは理にかなっています。

+0

これは意味があります。ありがとう – Smeegs

関連する問題