共用方式為


Reason 屬性

更新:2007 年 11 月

重要事項:

只有在 Team Foundation Server 2008 Service Pack 1 版中才能使用這項功能。

Team Foundation Server 2008 Service Pack 1 版 IBuildDetail 包含屬於 BuildReason 型別之列舉型別的 Reason 屬性。這項屬性會顯示觸發建置的方式。如需詳細資訊,請參閱 HOW TO:建立組建定義。允許的值如下:

  • Manual:此值表示建置是由使用者透過 Team 總管中的 [佇列新組建] 功能表命令手動啟動。

  • IndividualCI:此值表示建置是因為簽入而啟動,組建定義是設定為在每次簽入時建置。

  • BatchedCI:此值表示建置是因為一個或多個簽入動作而啟動,組建定義是設定為累積簽入。

  • Schedule:此值表示建置是因為排程在特定時間而啟動,組建定義是設定為在有變更簽入的情況下,依定期排程進行建置。

  • ScheduleForced:此值表示建置是在指定的時間啟動,組建定義是設定為不論有沒有變更簽入,都要依定期排程進行建置。

Reason 屬性列於建置記錄中。如需詳細資訊,請參閱組建報告概觀

Reason 屬性也是 GetBuildDetails 工作的輸出屬性,同時是可在 TFSBuild.proj 檔案中使用的 MSBuild 屬性。根據觸發程序的不同,您可以使用這個屬性修改組建檔案。您可以使用 Reason 屬性執行下列動作:

  • 區分由特定組建定義控制之建置的觸發方式。您之後即可根據不同的建置觸發程序,將各種組建屬性設定為不同的值,對組建輸出進行額外的自訂。

  • 在有一個以上的組建定義設定為使用相同的 TfsBuild.proj 檔案時,區分特定組建定義。

例如,如果您想要為每天夜間的建置產生自訂組建編號,則可以將下列 XML 加入至您的 TFSBuild.proj 檔案中:

<Target Name="BuildNumberOverrideTarget" Condition=" '$(Reason)' == 'Schedule' ">
    <MyBuildNumberGenerator TeamFoundationServerUrl="$(TeamFoundationServerUrl)" BuildUri="$(BuildUri)">
      <Output TaskParameter="BuildNumber" PropertyName="BuildNumber" />
    </MyBuildNumberGenerator>
</Target>

此外,MyBuildNumberGenerator 工作必須註冊與定義。如需詳細資訊,請參閱 HOW TO:自訂組建事件

請參閱

概念

瞭解 Team Foundation Build 組態檔

其他資源

在 Team Foundation Build 中使用組建定義