2014-09-02 41 views
1

我有兩個完全獨立的項目,它們都依賴於相同的基礎項目和共享nuget包。出於這個原因,我別無選擇,只能有一個VCS根目錄來確保我擁有所有需要的文件。單個VCS根目錄下的多個項目導致掛起

我已經設法配置TeamCity中的每個項目來處理所需的csproj文件並正確觸發。但是,如果我爲項目A提交了一些項目B不關心的東西,它仍然會顯示爲「Pending(x)」,即使它們永遠不會被該項目的配置觸發。

當我提交項目B的工作 - 關心時,它會消失,但看起來很煩人。那麼有沒有辦法將它配置爲不查看項目A中文件的更改?

Pending example

這是項目中的觸發器:

-:root=SVN:. 
+:Web/** 
+:Library/** 

這是項目B中的觸發:我的VC

-:root=SVN:. 
+:Client/** 
+:Library/** 

我使用Subversion如果將有助於配置。

回答

1

有一個VCS根目錄,但配置簽出規則而不是VCS觸發器。如果編輯構建配置並進入VCS設置,請選擇「查看結帳規則」。對於第一個項目輸入:

+:Web/** 
+:Library/** 

這將意味着構建不知道任何有關/客戶端,並且不能告訴您有任何正在進行的更改。如果進行此更改,則不再需要限制VCS觸發器,因爲它將被預過濾爲僅查看這些文件夾。

您需要對第二個構建配置進行類似的更改以實現相同。

+0

結帳規則適用於整個VCS根目錄,因此更改一個會影響兩個項目。然而,憑藉結賬過程的知識,我決定使用2根具有配置的結帳規則的按鈕,現在按照我所需的方式正常工作。雖然不是直接的答案,但它確實讓我找到了解決方案,所以給你加分。 – Perry 2014-09-03 08:53:43

0

爲什麼你有單個VCS根目錄?您可以輕鬆擁有多個VCS根目錄。

是否有VCS觸發器設置,如果是,則應開始構建。您能否提供有關VCS根和VCS觸發器的更多信息?

相關問題