使用組建工作區
更新:2011 年 5 月
在建置流程期間,組建代理程式會進行編譯並另外處理原始程式檔。 在組建代理程式處理這項工作之前,會先將檔案從版本控制伺服器上的資料夾下載至本機工作目錄。 為了加快下載這些檔案的速度,組建代理程式會建立一個版本控制工作區,將伺服器上的資料夾對應至組建代理程式的本機工作目錄資料夾。
在建置流程開始前
在建置系統中為每個組建代理程式設定工作目錄。 如需詳細資訊,請參閱建立和使用組建代理程式。
當您建立組建定義時,在 [工作區] 索引標籤上指定那些包含您要下載之檔案的資料夾,以及這些資料夾應該如何對應至組建代理程式的本機資料夾。
在建置流程期間
建置流程會將您的工作區規格傳遞至 CreateWorkspace 活動 工作流程活動,以便在其工作目錄中建立工作區。
建置流程會使用 DownloadFiles 活動 活動將檔案下載至工作區。 在這個步驟之後,組建代理程式會開始處理 (如編譯) 這些檔案。
設計組建定義的工作區
設計組建定義的工作區時,應遵循某些最佳做法。
包含所有必要的資料夾。
確認包含所有含有建置流程所需之檔案的資料夾。 例如,如果您在 [流程] 索引標籤的 [要建置的項目] 欄位中加入另一個方案,可能需要將另一個對應加入至工作區。
只包含必要的資料夾。
只將建置流程所需的資料夾對應為 [使用中] 的 [狀態] 值。 如果對應資料夾的子資料夾含有建置流程不需要的檔案,將它對應為 [已隱匿] 的 [狀態] 值。 在許多情況下,建立組建定義時,Team 專案的根資料夾會在工作區中對應。 此組態會造成組建代理程式下載 Team 專案的之版本控制資料夾中的所有檔案。 如果這個資料夾包含許多資料,組建可能會因為下載大量不需要的資料而浪費建置系統的資源,並使得建置流程速度變慢。
從 [流程] 索引標籤的 [要建置的項目] 欄位中移除項目時,尋找可從工作區中移除的對應。
使用 $(SourceDir) 語彙基元將伺服器資料夾對應至 .. \Sources 子目錄的本機資料夾。
在大部分情況下,組建代理程式上原始程式檔的最佳位置是在工作目錄的 ..\Sources 子目錄底下。 在 [組建代理程式資料夾] 方塊中使用 $(SourceDir) 語彙基元,即可指定這個位置。
請注意,工作區是如何影響簽入所觸發的組建定義。
如果您已經將組建定義的 [觸發程序] 設為 [連續整合]、[正在復原組建] 或 [閘道簽入],您對應的伺服器資料夾會繫結至建置流程。 例如,如果開發人員把變更簽入有 [閘道簽入] 觸發程序的組建定義之工作區中對應的資料夾,那麼在建置流程完成之前,那些變更會一直被封鎖。
如需觸發程序的詳細資訊,請參閱指定組建觸發程序和原因。
組建定義工作區範例
Roberto (組建工程師) 建立了 Storefront Nightly 組建定義。
此組建定義會建置兩個方案:$/Core/Controllers/Controllers.sln 和 $/Core/Viewers/Viewers.sln。 因此,它必須對應兩個含有這兩個方案的資料夾、這兩個方案包含的專案,以及這兩個方案所需的所有其他檔案。
為了改進建置流程的效率,Roberto 排除含有建置流程不需要之文件檔案的資料夾:$/Core/Viewers/Docs。
這兩個方案相依於一些來自其他公司元件庫中的二進位碼。 這些二進位碼受到所有權機制保護,要求它們必須位於特定的實體資料夾:c:\adatum\widgets。
複製工作區之間的資料
把對應從一個工作區複製到另一個工作區,可以節省時間。
若要從其中一個工作區複製對應
按一下 [複製現有工作區]。
在 [選擇要複製的工作區] 對話方塊中,從工作區複製對應。
若要從另一個組建定義工作區或另一個小組成員的工作區複製對應
請執行下列其中一個步驟:
若要從另一個組建定義工作區複製對應,請開啟組建定義,然後按一下 [工作區] 索引標籤。
若要從另一個小組成員的工作區複製對應,請要求該小組成員開啟 [檔案] 功能表,然後按一下 [原始檔控制],再按一下 [工作區]。 選取該工作區,然後按一下 [編輯]。
以滑鼠右鍵按一下 [工作資料夾] 資料表中的資料列,然後按一下 [全選]。
以滑鼠右鍵按一下 [工作資料夾] 資料表中的資料列,然後按一下 [複製]。
建立一個文字檔,然後將 [剪貼簿] 內容複製到該文字檔,再加以儲存。
建立一個組建定義,或修改現有的組建定義,其為您所複製之對應的目標。
在 [工作區] 索引標籤上,以滑鼠右鍵按一下 [工作資料夾] 資料表中的資料列,然後按一下 [貼上]。
視需要調整供組建代理程式使用的對應。 尤其確認 [組建代理程式資料夾] 方塊中的值是正確的,或包含 $(SourceDir) 語彙基元,視何者適用而定。
如需詳細資訊
建立組建定義時,會定義組建代理程式工作區。 如需詳細資訊,請參閱建立基本組建定義。
組建代理程式工作區基本上是與版本控制工作區相同的機制,開發人員會用以處理 Team 專案中的原始程式檔。 您可以複製版本控制工作區與組建代理程式工作區之間的對應。 如需版本控制工作區的詳細資訊,請參閱建立工作區以使用 Team 專案。
變更記錄
日期 |
記錄 |
原因 |
---|---|---|
2011 年 5 月 |
加入主題。 |
資訊加強。 |