共用方式為


定義建置流程以支援連續整合

你的小組可以透過將程式碼整合各種功能到共用儲存機制然後盡可能頻繁的建置和測試結果使程式碼基底的錯誤降至最低。 您可以實作這個策略,稱為連續整合,藉由定義建置流程來確保您和小組可以儘快判斷功能小組簽入組建是否中斷或導致測試失敗。

本主題內容

  • 定義建置流程以支援連續整合

  • 改善建置處理序的函式和效能的方針

  • 後續步驟

定義建置流程以支援連續整合

必要的使用權限

若要執行這個程序,您的 [編輯組建定義] 權限必須已設定為 [允許]。 如需詳細資訊,請參閱Team Foundation Server 使用權限

定義建置流程以支援連續整合

  1. 在 [Team 總管] 中:

    1. 如果您尚未連接至要處理的 Team 專案,請連接到 Team 專案

    2. 選擇首頁圖示 首頁, 然後再選組建圖示 [組建].

    3. 在 [組建] 頁面上,選取 [新增組建定義]。

    [新增組建定義] 視窗隨即出現。

  2. 點選引動程序 索引標籤,選擇 [ 連續整合

    提示

    如果您的開發人員簽入建置時必須等候很久,您可能要改選擇復原組建。觸發程序會造成建置系統建置多個簽入。如需詳細資訊,請參閱使用正在復原組建觸發程序在一個固定的區間建立多個簽入組建

  3. 點選工作區 標籤裡面的 工作資料夾資料表,指定此組建定義應該監視的版本控制資料夾。

    提示

    請確定建置流程函式正確然後改善效能,包括所有資料夾和一些建置流程時所需的資料夾。如需如何指定這些檔案的詳細資訊,請參閱使用組建工作區

  4. 組建預設值 索引標籤上,為改善效能,請選擇[ 這個組建不會複製到 收件資料夾的輸出檔]。

  5. 處理程序 索引標籤上,在 建置流程範本中,預設會選取預設範本。 要建置項目的參數,會指定方案或您想要建置專案的程式碼來建置。

  6. 點選處理程序索引標籤,設定建置程序參數,以確保簽入符合您的小組的程式碼的標準和品質避免不必要地的延遲。

    如需更多資訊,請參閱之後的改善組件流程功能和效能方針

  7. 指定組建處理選項至其他索引標籤。 如需詳細資訊,請參閱建立組建定義

改善建置處理序的功能與效能的方法

為了確保建置程序符合您的小組的需要和可以盡快執行,當你指定用處理程序 索引標籤指定數值時應該考慮下列方針。

必要的節點

  • 要建置的項目要建置的組態:如果您將這個參數保留空白,就會針對每個方案和專案使用預設平台和組態。 若要最佳化效能,請遵循下列方針:

    • 如果平台-組態配對的建置速度超過其他配對,請在這個參數中指定此配對。

    • 盡可能指定較少的平台-組態配對。

基本節點

  • 清除 [工作區]:請將此值設定為 (建議選項) 或 輸出,藉以改善效能。 不過,如果工作區未清除,小組很可能會遺漏某些類型的缺失,例如在重構期間引入工作區。 如需詳細資訊,請參閱根據預設範本定義建置流程

  • 執行程式碼分析:請將此值設定為 永不,藉以改善效能。

  • 來源和符號伺服器設定索引來源:請將此值設定為 False,藉以改善效能。

進階節點

  • 代理程式設定

    • 名稱篩選標記篩選:使用組建代理程式名稱或標籤,將此組建定義繫結至專為執行此組建所設計的組建代理程式。 組建代理程式執行所在的硬體,採用的硬體應具備足夠的能力以迅速處理此組建,符合小組的效能期望。

    • 最長執行時間: 將此值設定合理範圍內較小的數字。 例如,15 分鐘對您的小組來說不成問題,但八小時就太長。

  • 建立失敗工作項目: 設定成 True 如果您想要在建置程序在其簽入失敗時將 bug 指派給開發人員。

  • 停用測試

    • 請選取 True,藉以改善效能。

    • 如果您的程式碼必須通過特定測試,請選取 False,然後定義一組測試組建來執行。 您可以藉由執行所需的測試改善效能。 若要指定此測試,請依照分類或優先權篩選它們。 如需詳細資訊,請參閱在建置流程中執行測試

  • 標記來源: 設定成 True 如果您想要用已完成之組建的名稱標籤的程式碼。 這類標記對你的小組很有用。 例如,標記可以協助小組識別程式碼的「最新已知良好」版本。 否則,設定為 False 為了達到最佳效能。

如需更多自訂建置流程範本的詳細資訊,請參閱根據預設範本定義建置流程

後續步驟

當 Bug 建置中斷時,第一個修正該 Bug 在查看其他無關的變更之前,對小組很重要。 您可以使用組建簽入原則,限制簽入直到修正組建中斷的問題。 如需詳細資訊,請參閱在分成連續組建之後最小化程式碼變換

您可以找出問題,例如建置中斷點或失敗的核心單元測試如果您使用持續整合觸發程序。 不過,您可以封鎖這類的問題導入您使用的程式碼基底閘道簽入觸發程序。 如需詳細資訊,請參閱定義閘道簽入建置流程來驗證變更

相關主題

如需如何有效率地和可靠地整合和部署複雜的軟體專案的詳細資訊,請參閱 連續建置和部署