2017-03-16 82 views
0

我在tfs 2015.3中創建了一個ci版本。在觸發器選項卡上,我設置了門控檢入。
有沒有辦法讓開發人員現在處於生成失敗的狀態。目前沒有辦法,我不想使用警報,我想在
的消息中另外,當構建失敗時,這些文件會在構建服務器上檢出,我怎樣才能取消這種行爲,這需要一個tfs管理員來釋放這些文件。tfs 2015 gated check in failed

+0

什麼是細節意味着在VS的消息?像使用舊的XAML構建通知一樣的事情?有一個[uservoice](https://visualstudio.uservoice.com/forums/330519-team-services/suggestions/11081358-build-notifications-for-build-vnext)現在你可以嘗試使用一些第三方軟件,派對工具如** catlight **,它顯示vNext在托盤區域的狀態。 –

回答

3

在TFS 2013曾經有一個叫做Team Foundation Build Notification工具與Visual Studio 2013年出貨然而,這不再是這種情況。

如果你不想使用電子郵件通知有,你可以在你的盤運行,以收到生成通知第三方應用程序。我最近自己也使用了catlight來解決完全相同的問題。如果您正在使用像Slack這樣的聊天應用程序,您還可以將integrate build notifications加入您的團隊的閒置頻道,以便在構建失敗時收到通知。

爲了回答你問題的第二部分,瞭解門控簽入做究竟是重要的。

當你入住和門控入住手續時triggerd您的文件不簽入,但TFS創建shelveset代替。然後,TFS將使用最新版本的源代碼與剛剛創建的shelveset進行私有構建。只有在此私人構建通過您的shelveset中的掛起更改時,代表觸發了門控簽入的用戶纔會由構建檢入。這將創建一個新的changeset

辦理登機手續時,所有鎖都將被釋放,因此當構建服務器代表您檢入您的更改時,將會釋放所有具有check-in or check-out lock的文件。

當構建失敗,就不會在擱置(當門控簽入的構建是triggerd創建)所做的更改不會被這樣的鎖將不會被釋放構建服務器進行檢查項。在源代碼管理資源管理器中,文件仍然會有待處理的更改(並被檢出),因爲工作空間中的更改尚未簽入。這是預期的行爲,除非您已禁用multiple check-out,並且通過檢出這些文件阻止其他開發人員進行更改,否則不應該爲您造成任何問題。

我不建議您在不允許多次結帳的情況下使用門控辦理登機手續。此外,如果可以以任何方式避免,我不會建議禁止多次結賬。

門控辦理入住手續是爲了保護自收到檢驗,這些插件將打破應用程序(它不再編譯或單元測試失敗)或減少低於您的質量標準信息庫。然而,這也意味着,除非您的構建過程中的所有規則和驗證都通過,否則您無法辦理登機手續,因此意味着其他開發人員將被鎖定,直到您能夠通過「登機口」。