管理組建資訊和控制詳細資訊
您可以取得已完成組建的詳細資訊:
**組建是如何執行的?**組建是否成功?組建是何時開始的?組建執行了多久?相較於先前的組建,這個組建是如何執行的?
**建置什麼?**這個組建進行了哪些方案、變更集和 Bug 修正?
**哪裡出現?**發生了什麼警告或錯誤?哪些測試失敗?
定義建置流程時,您可以有系統地控制儲存每個已完成的組建之資訊的詳細等級。或者,在手動將單一組建回合排入佇列時,您也可以在控制它的詳細等級。
本主題內容
組建資訊的產生方式和流程
定義建置流程
建置流程已排入佇列並等候執行
組建資訊已產生、已篩選和已儲存
擷取組建資訊
設定記錄詳細資訊的建置流程參數
最佳做法:設定詳細等級越低越好
執行組建時使用最低的詳細等級
設計自訂建置流程範本時使用最低的詳細等級
如需詳細資訊
組建資訊的產生方式和流程
定義建置流程
開發建置流程時,您可以有系統地控制資訊的詳細等級。當你建立或編輯以預設範本或升級範本為基礎的組建定義時,會顯示 [流程] 索引標籤。在 [基本] 節點中,您可以選取 [記錄詳細資訊] 清單中的值以指定這個建置流程參數。
如果內建流程範本不符合您的需求,您可以開發自訂建置流程範本。建立這種範本時應該要仔細撰寫組建資訊。如需詳細資訊,請參閱 。當設計自訂建置流程範本時,請使用最低的詳細等級。。
建置流程已排入佇列並等候執行
當您將以預設範本或升級範本為基礎的組建定義排入佇列時,您可以手動覆寫 [記錄詳細等級] 設定。在 [佇列組建] 對話方塊中,選擇 [參數] 索引標籤,然後展開 [基本] 節點,再選取 [記錄詳細資訊] 清單中的值以指定這個建置流程參數。這個值會套用至單一組建回合。
組建資訊已產生、已篩選和已儲存
建置系統會將 [詳細資訊] 建置流程參數中的值傳遞至 Verbosity 屬性。這個屬性用來篩選您的 Team Foundation Server 記錄並儲存透過下列來源的 Information 的組建資訊:
工作流程活動:數個工作流程活動會在作業成功時產生訊息,或在作業失敗產生警告或錯誤。例如,SyncWorkspace 活動會在將原始程式碼和其他檔案從伺服器下載到組建代理程式時產生重要性低的訊息,而在下載檔案失敗時產生錯誤。另一個範例是,OpenWorkItem 活動會在無法建立工作項目時產生警告。
您可以使用其他工作流程活動,直接撰寫您自己的組建資訊。如需詳細資訊,請參閱設計一個以所需的最低詳細等級寫入資訊的自訂建置流程範本。
編譯程式碼建置流程會用MSBuild活動來運用 MSBuild,以便編譯二進位碼以及執行其他必要的工作。此活動的 Verbosity 屬性會控制此流程產生並發行至下列位置之資訊的詳細等級:
您的 Team Foundation Server 儲存編輯結果、錯誤和警告。
登入頁面置放資料夾中儲存資訊和您與 MSBuild 產生的其他訊息一起的 Team Foundation Server 相同。
測試程式碼:建置流程會使用 RunTests 或 MSTest 活動執行測試。這些活動記錄檔分類與高重要性的所有訊息,如果組建控制器是內部部署或低,如果您使用 裝載的組建控制器。
擷取組建資訊
建置執行中時或完成後,您可以從組建結果視窗擷取摘要和詳細資訊。您可以從這個視窗將這項資訊複製到 [剪貼簿]。您也可以直接連結置放資料夾來擷取記錄檔、二進位檔和其他資料。
記錄詳細資訊的建置流程參數
在已預設範本或升級範本為基礎的建置流程中,您可以使用 [記錄詳細資訊] 建置流程參數來管理已記錄或儲存之詳細資訊。
下表列出 [記錄詳細資訊] 的值和其對應效果:
值 |
錯誤 |
警告 |
高重要性訊息 |
普通重要性訊息 |
低重要性訊息 |
工作流程活動屬性 (輸入和輸出) |
---|---|---|---|---|---|---|
最小 |
Y |
N |
N |
N |
N |
N |
Normal |
Y |
Y |
Y |
N |
N |
N |
詳細 |
Y |
Y |
Y |
Y |
N |
N |
診斷 ([提示]:在許多情況下您可以用來診斷記錄檔。請參閱 診斷建置問題)。 |
Y |
Y |
Y |
Y |
內部部署組建控制器:Y 裝載的組建控制器:N |
Y |
最佳做法:設定詳細等級越低越好
雖然組建資訊很重要,但記錄過多資訊的建置流程可能導致問題。這些問題比它們可以處理可能包括如何在您的 Team Foundation Server、減少的 Visual Studio 效能和多載的許多儲存您的有更多資訊的小組成員。
執行組建時使用最低的詳細等級
執行組建時,一般應該遵循使用最低詳細等級設定的最佳做法,提供完成目標所需的資訊。
設計自訂建置流程範本時使用最低的詳細等級
建置流程的使用者會依賴詳細等級篩選來降低資訊負荷。您可以採取下列措施,使得這項篩選更有效:
確認您選取最適當的活動來寫入訊息:WriteBuildMessage 活動、WriteBuildWarning 活動 或 WriteBuildError 活動,或or WriteBuildTestError.
使用 WriteBuildMessage 活動 活動記錄資訊時,請套用目的性和一致性的做法來設定 Importance 屬性。為訊息設定較高重要性時,請注意可能會增加需要儲存並呈現給小組成員的資料量。
注意事項 |
---|
如果在迴圈結構 (例如 DoWhile、ForEach<T> 或 While) 內使用這些活動,這類決策的影響可能會特別劇烈。 |
如需詳細資訊
診斷建置問題 說明如何取得診斷記錄檔。
Team Foundation Build 活動說明本主題所述的建置流程工作流程活動。
根據預設範本定義建置流程 和 使用舊版建置流程 提供相關指引關於如何建立和維護以預設範本或升級範本為基礎的組建定義。
檢視建置結果提供有關如何使用建置結果視窗的指引。
IBuildDetail、BuildMessageImportance 和 BuildVerbosity 說明一些主要的 Team Foundation Build API 項目,提供組建資訊功能。
MSBuild 命令列參考說明 MSBuild。
指定組建觸發程序和原因和將組建排入佇列說明如何自動及手動將組建排入佇列。