2011-03-25 59 views
1

我想要在多個構建定義中使用外部文件中定義的相同目標。該外部目標文件應存儲在源代碼管理中。 在TFSBuild.proj and Importing External Targets中解釋的引導階段似乎不允許爲多個構建定義下載相同的文件,因爲構建文件始終被命名爲TFSBuild.proj,因此位於每個構建定義的單獨文件夾中。團隊構建:爲多個構建定義使用相同的外部目標

這個問題在先前提到的線程的評論中有點令人興奮,但似乎motre適合創建一個新的線程。

引述由大衛Keaveny這一評論:

是否有可能得到TFS期間 引導其他文件夾路徑下載 ?我有一個Common.targets 文件,其中包含所有自定義 任務,我的TFSBuild.proj應 執行,但考慮到我幾個 生成定義(每 定義一個文件夾),它坐落在一個單獨的文件夾 在與構建 定義相同的級別。沒有它,當然, 構建立即失敗。 - 大衛 Keaveny 8月17'10在23:58

回答

1

我不知道是否有一個簡單的方法來做到這一點。您可以擁有目標文件的主副本,並將其分支到每個構建定義文件夾中。更新目標文件時,您需要記住將其合併到所有文件夾。你可以編寫一個自動合併的腳本,腳本應該能夠計算出分支關係使用的是什麼,然後遍歷它們並調用tf merge,然後tf checkin。這感覺像很多工作。

您可以在您的構建服務器上安裝目標。我們有一些我們使用的自定義目標,我們將它們當作產品進行管理,它們擁有自己的源代碼控制區域,並且獨立於其用於構建的軟件進行版本控制。我們用wix打包它們,一旦測試完成,它們就安裝在所有的構建機器上。這似乎適用於我們,這意味着我們可以控制新目標文件的部署,並且目標安裝只是構建服務器基線版本的一部分。

我會很感興趣,如果有人有一個更簡單的方法來管理這個雖然。

+0

顯然,沒有簡單的解決方案存在。對我來說,爲TFS構建腳本提供固定的文件名並且不允許在同一文件夾中存在多個腳本是一個設計錯誤。感謝您的回覆。我會接受它。 – 2011-04-15 10:51:46

相關問題