顯示具有 TFS 標籤的文章。 顯示所有文章
顯示具有 TFS 標籤的文章。 顯示所有文章

2014年11月18日 星期二

如何刪除已離職同事所遷出的檔案

公司同事離職了,TFS上仍然是簽出的。如果是文字檔的話那還好,因為可以同時簽出,不會因為該檔案被簽出而被鎖住無法簽入。但 *.rdlc 就是一個例子。明明是文字檔,但tfs 不知道,只能以 binary 檔案來處理。

以下是我找出來的指令, tfs server url 自行置換

查詢所有的 workspaces
tf workspaces /collection:http://tfsserver:8080/tfs/defaultcollection /owner:*


刪除指定的 workspace
tf workspace /delete workspaceName;account /server:http://tfsserver:8080/tfs/defaultcollection

2013年11月1日 星期五

「TFS 上取不到新版的程式」的解決方式

問題:

你好,有一個問題請你參詳一下,我在這邊的確是有看到一個現象,就是TFS的版本的確是最新的。但Local的版本是舊的,取得最新版還是舊的程式,請問這可能是甚麼原因?
如下圖

SNAGHTML39b195a

原因

取得新版本後,TFS Server 會記錄您已經取得對應的版本號(如 8172),但因故本機的檔案因異動而並不是最新的。
例如在檔案總管刪除檔案,此時 TFS 並不知道您手動刪除。

解決方式

強迫取得最新版本,即使本機已有最新版本也要以伺服器版本覆蓋本機檔案。
下圖以 VS2013 為例。在指定的目錄上,按右鍵,取得「指定的版本」

SNAGHTML39d1932

勾選選項「覆寫本機可寫但未簽出的檔案」,「即使與伺服器版本相同,也要覆蓋本機檔案」(<== 我自己翻的,正確的中文請自行比對)

SNAGHTML39db1a9

2013年5月8日 星期三

解決 TFS Build 時 出現 C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets (983) 的警告

問題

當我在 Team Foundation Server 上佇列一個新的組建後,組鍵的結果常常跑出一堆的警告。如下

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets (983): The reference assemblies for framework ".NETFramework,Version=v4.5" were not found. To resolve this, install the SDK or Targeting Pack for this framework version or retarget your application to a version of the framework for which you have the SDK or Targeting Pack installed. Note that assemblies will be resolved from the Global Assembly Cache (GAC) and will be used in place of reference assemblies. Therefore your assembly may not be correctly targeted for the framework you intend.

不處理,好像也沒什麼事。只是,一直覺得怪怪的。

解法

原來,雖然我在 Build Server 上有安裝了 .NET Framework V4.5, 可以順利的建置,仍然會出現上述的警告。在Build Server 上安裝  Windows Software Development Kit (SDK) for Windows 8 後,就不會再出現這些惱人的警告了。

2012年4月10日 星期二

TF293000: 在下列工作項目欄位的資料倉儲偵測到資料衝突

緣由

使用了 Scrum template 後,就發生了下面的錯誤。

image

原因

兩個 TeamProjectCollection所使用的欄位定義不同,會導致 建立 Cube 時無法建立 dimesion。

例如我的 TFS 的 DefaultCollection 的 System.State , Name (用來作為 friendly name) 與另一個 Team Collection 定義的不同。(又是中文化的問題)

SNAGHTML836395(In DefaultCollection)

 image(Another TeamProjectCollection)

解決方法

將兩者欄位定義改成一致即可。以上為例

witadmin changefield /collection:http://tfsserver:8080/tfs/collection1 /n:System.State /name:狀況

參考

http://msdn.microsoft.com/zh-tw/library/ee921480.aspx#

http://msdn.microsoft.com/en-us/library/dd236909.aspx

PS

下面是我所下的指令,可以做為參考

witadmin changefield /collection:http://tfsserver:8080/tfs/rsi /n:System.Title /name:標題
witadmin changefield /collection:http://tfsserver:8080/tfs/rsi /n:System.State /name:狀況
witadmin changefield /collection:http://tfsserver:8080/tfs/rsi /n:System.State /name:狀況
witadmin changefield /collection:http://tfsserver:8080/tfs/rsi /n:System.Reason /name:原因
witadmin changefield /collection:http://tfsserver:8080/tfs/rsi /n:System.AssignedTo /name:指派給
witadmin changefield /collection:http://tfsserver:8080/tfs/rsi /n:Microsoft.VSTS.Scheduling.RemainingWork /name:剩餘工作
witadmin changefield /collection:http://tfsserver:8080/tfs/rsi /n:Microsoft.VSTS.Common.Activity /name:活動
witadmin changefield /collection:http://tfsserver:8080/tfs/rsi /n:Microsoft.VSTS.Build.IntegrationBuild /name:整合組建
witadmin changefield /collection:http://tfsserver:8080/tfs/rsi /n:Microsoft.VSTS.Common.Severity /name:嚴重性
witadmin changefield /collection:http://tfsserver:8080/tfs/rsi /n:Microsoft.VSTS.Build.FoundIn /name:發現於
witadmin changefield /collection:http://tfsserver:8080/tfs/rsi /n:Microsoft.VSTS.Common.Priority /name:優先權
witadmin changefield /collection:http://tfsserver:8080/tfs/rsi /n:Microsoft.VSTS.Common.Issue /name:問題
witadmin changefield /collection:http://tfsserver:8080/tfs/rsi /n:Microsoft.VSTS.Common.ActivatedDate /name:啟動日期
witadmin changefield /collection:http://tfsserver:8080/tfs/rsi /n:Microsoft.VSTS.Common.ActivatedBy /name:啟動者
witadmin changefield /collection:http://tfsserver:8080/tfs/rsi /n:Microsoft.VSTS.Common.ClosedDate /name:關閉日期
witadmin changefield /collection:http://tfsserver:8080/tfs/rsi /n:Microsoft.VSTS.Common.ClosedBy /name:關閉者
witadmin changefield /collection:http://tfsserver:8080/tfs/rsi /n:Microsoft.VSTS.Scheduling.StartDate /name:開始日期
witadmin changefield /collection:http://tfsserver:8080/tfs/rsi /n:Microsoft.VSTS.Scheduling.FinishDate /name:完成日期
witadmin changefield /collection:http://tfsserver:8080/tfs/rsi /n:Microsoft.VSTS.TCM.AutomationStatus /name:自動化狀態
witadmin changefield /collection:http://tfsserver:8080/tfs/rsi /n:Microsoft.VSTS.Common.StackRank /name:堆疊順位

2011年7月5日 星期二

Web deployment task failed. Unrecognized attribute 'serviceAutoStartMode'

經由上次介紹的 設定 IIS 為自動啟動 (Auto-Start)後,原先在 TFS 的 Web 自動部署 反而失敗了。訊息如下:

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.targets (3588): Web deployment task failed.((2011/7/5 上午 08:16:45) An error occurred when the request was processed on the remote computer.)  (2011/7/5 上午 08:16:45) An error occurred when the request was processed on the remote computer. Filename: \\?\C:\Windows\system32\inetsrv\config\applicationHost.config Line number: 176 Error: Unrecognized attribute 'serviceAutoStartMode'

看來,目前 TFS 的 Publishing 尚不知道  AppFabric 的serviceAutoStartMode 屬性。只好在測試機上不使用 IIS Auto Start 的功能。

2011年6月2日 星期四

TFS 的 Web 自動部署

繼上次的 TFS 建置:Coded UI 自動測試 問題後,好久好久我都沒再碰 TFS 的 Build 設定了。

這次,目的在建立 Web 的自動部署。

環境

這次的環境較為複雜。有開發機,TFS Server,Build Server,Test WebServer.

希望可以達成的需求:在開發機上要求一個 Build後,TFS Server 向 Build Server 要求啟動一個 Build。Build Server 完成 Compile 後,將 Web Application 自動部署到 Test WebServer。

過程還有些漫長,最大的原因還是「太久遠的記憶」是不可靠的。下面是我試出來的結果。

Build Definition

在 MSBuild Arguments 我設定如下

/p:DeployOnBuild=True
/p:DeployTarget=MsDeployPublish
/p:MSDeployPublishMethod=RemoteAgent
/p:CreatePackageOnPublish=True
/p:DeployIisAppPath="Default Web Site/YourApp"
/p:MsDeployServiceUrl=http://172.199.199.199/MsDeployAgentService
/p:username=administrator
/p:password=adminpassword

image

 

Build Server

Build Server 上,必須安裝了 Visual Studio 2010。我試的結果,不裝,就不會自動部署。我不知道到底我錯過了什麼環結,雖然設定了上述的 MSBuild Arguments,但就是不跑 Deploy。

安裝時,我選了 c# 與Visual Web Developer。理論上只需安裝 Visual Web Developer即可,但我不想再浪費時間試了。

image

另外,在 Visual Studio 2010 Web Application 的專案屬性上,也有一些玄機。如果有勾選「Include IIS settings as configured in IIS」或「Include application pool settings used by this Web project」的話,在 Build Server 就要安裝 IIS 並且有相同的設定。因為當 Build Server 要打包 package 時,需要讀IIS的設定。讀不到設定就會出現下面的錯誤訊息。

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.targets (1657): "MapUriToIisWebServer" 工作發生未預期的失敗。 System.Runtime.InteropServices.COMException (0x80005000): 未知的錯誤 (0x80005000)  

image

此時的我,顧不得完美了,先不要勾選這兩個選項了。

Test Web Server

1 在待部署的 Web Server 上,必須安裝 Web Deployment Tool。安裝時,必須注意要選「完整」安裝。

2 安裝完畢後,需要在服務中啟動 Web Development Agent Service

image

3  Build 執行後出現下面的錯誤

Web deployment task failed.((2011/6/2 下午 05:14:42) An error occurred when the request was processed on the remote computer.)  (2011/6/2 下午 05:14:42) An error occurred when the request was processed on the remote computer. The application pool that you are trying to use has the 'managedRuntimeVersion' property set to 'v2.0'. This application requires 'v4.0'.

由於我沒有選擇要打包 IIS 的設定,部署後的應用程式是下 Default Web Site 下。Default Web Site 預設是.net framework v2.0, MSDeploy 在建立 application 時會預設同上一層的 application pool。

我的解法是直接將上一層的 Default Web Site 改用 v4.0 的 application pool。

結論

上述設定,一定還有調整優化的空間。之後有空再寫 blog好了。

雖然很麻煩,但想到之後不必再手動部署測試環境時,心裡也就舒坦了許多。

參考

2011年5月16日 星期一

讓 VS2010 連接 Team Foundation Server 加快

根據小朱大的 [TFS] Visual Studio 2010 Team Foundation Server 首次部署心得,找到了我長久以來的困擾解決方式。

這是一定要記下來的啦!下文是 copy 小朱大的文章部份內容

另外一個問題是,在連接 Team Foundation Server 時真的是超級無敵的慢 …,且不論是哪個 Visual Studio 的版本都會這樣,後來在網路上找到一個解法,在 Visual Studio 的 devenv.exe 的設定檔 devenv.exe.config 中,找到 <system.net>,然後加入下列的設定:

<system.net>
<defaultProxy enabled="false" />
<settings>
<ipv6 enabled="true"/>
</settings>
</system.net>

再重新打開 Visual Studio IDE,此時連接 TFS 的速度就會加快很多。

2011年1月12日 星期三

為 Team Foundation Server 的 Team Project 加上Portal

在建立 Team Project 時,忘了勾選「建立網站」的選項,以致於後來專案都沒有網站可以用。怎麼辦?

此時,可以使用 Team Foundation Server Power Tool 的功能為我們完成任務。

tfpt addprojectportal /collection:http://tfsserver:8080/tfs/DefaultCollection /teamproject:YourTeamProject /processtemplate:"MSF for Agile Software Development v5.0"

2010年12月2日 星期四

使用 TFS Power Tool 的 Best Practices Analyzer

微軟出了很多的 Best Practices Analyzer(BPA),幫助我們檢視電腦、資料庫、伺服器的設定。目前介紹的就是 TFS 的 BPA

SNAGHTML1590726

掃描完畢後,看一下報告。Oh! 好像有不少的問題。

SNAGHTML184e2de

再按一下 「Tell me more about this issue and how to resolve it」連結,就會顯示相關的訊息。

Team Foundation Server Power Tools September 2010

直到最近才知道 TFS Power Tool 又在10月皆出新的版本

移除舊版本

如果之前已安裝過舊的版本,記得先移除舊版本。下圖是舊的版本。

image

安裝

安裝仍和之前版本相同。記得安裝前先將 Visual Studio 2010 關閉。安裝時使用 Typical 的選項即可。

也不知道為什麼,這個工具安裝時總是會花去5分鐘以上。明明該安裝檔 tfpt.msi 才 12.8 MB 啊!

使用

與之前的功能相同的就不說了。新功能可見這裡的說明。之後有機會再介紹吧!

2010年10月12日 星期二

TFS 2010 自動部署 Web

今天一直在測試自動部署 Web Application 到 Windows Server 2008 的功能。

先部署最簡單的 case: 直接部署到 Build server 並進行測試。

然而,之前的方法不知為何一直行不通?難道是 Windows2008 的原故嗎?

找了好久,終於找到了原因。原來不知道我新的 Build Server (for Windows Server 2008)哪個步驟省略掉了,導致 %Program Files%\MSBuild\Microsoft\VisualStudio\v10.0\ 下少了 Web 這個目錄。從別台伺服器 copy 過來,就又可以自動部署了。

image

PS: 之前也 copy 過 WebApplications 這個目錄,才能 Daily Build。真的忘記哪個步驟被忽略了。

2010年10月7日 星期四

No Code Coverage Results

問題

在 TFS 伺服器上,老是出現「No Code Coverage Results」的訊息。我就是要知道程式碼涵蓋率啊!

1 test run(s) completed - 100% average pass rate (100% total pass rate)
No Code Coverage Results

設定

目前方案的測試設定,是使用哪一個設定呢?我都是使用 Local (local.testsettings)這一個。

image

在Solution Items中,可以找到這一個項目。雙擊該項目,打開如下圖的設定。記得將 Code Coverage 勾選。

SNAGHTML44ee3d

按「Configure」,或雙擊「Code Coverage」,必須再設定對哪些  assembly 進行code coverage 的分析。

SNAGHTML47521e

這樣的設定下就成功了。先在本機跑一下,確定可以跑出 code coverage後,再 check in 到 TFS 上吧。

SNAGHTML4aa744

原因

在vs2010中,又多了一個TraceAndTestImpact.testsettings的設定。開發時,如果要了目前程式的修改衝擊到哪些測試,就必須使用這個一測試設定。而一旦設定了這個測試設定,很容易就忘記了,就這樣 check in 到 TFS中。這就是原因所在。?

2010年8月20日 星期五

Visual Studio Scrum 1.0 安裝

安裝過程,可見

http://visualstudiomagazine.com/Articles/2010/07/27/Installing-Scrum-Process-Template.aspx?Page=1

安裝

這裡 下載並安裝程式

上載Process Template

執行 Visual Studio 2010的功能表「Team/Team Project Collection Settings/Process Template Manager」

image

點擊「Upload」鍵,選擇目錄「C:\Program Files (x86)\Microsoft\Microsoft Visual Studio Scrum 1.0\Process Template」完成上傳.

Web Portal

小組網站必須顯示統計報表,而每種 Process Template 都可能有自己的顯示方式。Scrum 就是一例。

請將C:\Program Files (x86)\Microsoft\Microsoft Visual Studio Scrum 1.0\Project Portal\Microsoft.TeamFoundation.SharePoint.Scrum.wsp 複製到 moss 網站伺服器下的一個子目錄中,例如 c:\temp\。

再來,以管理員身份執行 cmd

image

逐一執行下列指令

SET STSADM="%CommonProgramFiles%\Microsoft Shared\web server extensions\12\Bin\stsadm.exe"
%STSADM% -o addsolution -filename Microsoft.TeamFoundation.SharePoint.Scrum.wsp
%STSADM% -o deploysolution -name Microsoft.teamfoundation.sharepoint.scrum.wsp -immediate -allowGacDeployment
%STSADM% -o execadmsvcjobs
%STSADM% -o enumsolution

記得注意一下是否有錯誤的訊息哦!我在執行%STSADM% -o execadmsvcjobs花了相當長的時間(1小時多),原來是在進行掃毒,你的環境可能沒有這回事。

結果

天啊!Dashboard 竟然出現了下面的錯誤訊息。但其它地方到還是正常的。而 Dashboard 也大約在半小時後自動正常了,也不曉得是什麼原因。

image

 

20110119 註記

這次安裝了另一台 TFS,這是安裝的是中文版的 TFS。使用上述方法後 並建立一個新的 Team Project 後,發生了下面的錯誤

TF249033: 沒有可供此地區設定識別項 (LCID) 使用的網站範本。網站範本名稱是: TFS2010 Agile Dashboard。LCID 是: 1033

查了保哥的 TFS2010 安裝 Microsoft Visual Studio Scrum 1.0 流程範本 ,才知道需要安裝 WSS 3.0 的 language pack

但最後,還是失敗了。用改 WSSTasks.xml 中的 language=1028 才能成功。

2010年6月29日 星期二

Asp.Net 4.0 Xml 轉換錯誤

於執行 TFS build  的結果,找到了下面的錯誤

Error    1    The "TransformXml" task failed unexpectedly.
System.UriFormatException: Invalid URI: The URI is empty.
   at System.Uri.CreateThis(String uri, Boolean dontEscape, UriKind uriKind)
   at System.Uri..ctor(String uriString)
   at Microsoft.Web.Publishing.Tasks.TransformXml.Execute()
   at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
   at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost, TaskLoggingContext taskLoggingContext, TaskHost taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask, Boolean& taskResult)        0    0  

為什麼呢?完全看不懂。

原來,簡單地說是轉換失敗了。我的 Web.config 中,屬性的值裡的大於 > 這個字元,但這是不合法的。Visaul Studio 並不會抱怨。

例如:

<?xml version="1.0"?>
<configuration>
<appSettings>
  <add key="myKey" value="cdcdcdcdjkcjd>" /> <!-- 值裡有大於字元  -->
</appSettings>
</configuration>

而使用 MSDepoly 工具時,會使用 Xml Transform 來轉換 web.config,就會發生錯誤了。

只是,為什麼錯誤訊息是 Invalid URI 呢?

TFS 建置:Coded UI 自動測試

Coded UI test 是 Visual Studio 2010 的一大賣點,可模擬使用者操作程式。而現在我們已經將 Build Server 建置完畢,當然希望也能進行自動測試。單元測試等原本就在 TFS 2008 上即可執行,而 Coded UI test 卻因模擬使用者登入而需要更多的安裝與設定。

安裝

除了 Team Foundation Server 2010 的安裝外,也需要安裝 Build Agent。在建置的過程中,會進行 Source Control 的取得最新版本,compilatin,以及 Test。在Test 的過程,如果有 Coded UI Test,則必須安裝 Test Agent Controller 及 Test Agent。

設定

Build Server

在Build Server 上,我們必須讓 Build Agent 跑在互動的模式。執行 Team Foundation Administration Console, 點擊「Build Configuration」, 找到Build Service 的 Property。

image

先按「Stop to make change」後,開使調整設定。必須選擇「Interative Process」, 並指定適合的 Credentialsi , 按Start鍵。

image

按Start 鍵後,會跑出下面的視窗。

image

Test Controller

Test Controller 用來控制及收集 Test Agent 執行測試的結果。

執行 Microsfot Visual Studio Test Controller 2010 Configuration,出現下面的視窗。一樣地,使用相同的帳號,並按「Apply Settings」。

image

Test Agent

Test Agent 則是安裝在測試機上,用來模擬使用者在電腦上操作。通常這些測試機都會使用虛擬器,以模擬不同的使用者環境,如 Windows 7 + IE8, Windows Vista + IE7,Mac + Safari。

執行 Microsfot Visual Studio Test Controller 2010 Configuration,出現下面的視窗。一樣地,使用相同的帳號,並按「Apply Settings」。

image

需要注意的是,由於這些安裝 Test Agent 的機器需要「模擬」使用者操作 UI,故不能鎖住電腦(螢幕保護程式),本機一開機後也會直接登入。

自動部署

為了讓後續的網站測試能順利進行,我們必須讓 daily build 時自動在 IIS 上建立應用程式。
在 Build Definition 上,加入 MSBuild 的參數

/p:DeployOnBuild=True
/p:DeployTarget=MsDeployPublish
/p:MSDeployPublishMethod=InProc
/p:CreatePackageOnPublish=True
/p:DeployIisAppPath="預設的網站/EInvoice2" 
/p:MsDeployServiceUrl=localhost

image

修改測試

我測試的是一個 Web Form 的應用程式,在專案中加入一個測試專案。在測試專案中再加入一個 Code UI Test。完成錄製後,簽入到TFS後執行。哇!發生錯誤!

Test method xxx.Tests.CodedUIPermissionsTest.AddDeletePageTest threw exception:
Microsoft.VisualStudio.TestTools.UITest.Extension.PlaybackFailureException: Cannot perform 'SetProperty of Password with value "zPjUJLMG7JyDvQw78l9YYBtInZnoHu7P"' on the control. Additional Details:
TechnologyName:  'Web'
ControlType:  'Edit'
Id:  '_txtPassword'
Name:  '_txtPassword'
TagName:  'INPUT'
---> System.Runtime.InteropServices.COMException: Error HRESULT E_FAIL has been returned from a call to a COM component.

怎麼辦呢?原來當初錄製的帳號與執行測試的帳號是不同的。而為了安全,Coded UI 測試時遇到密碼欄位資料會使用原錄製帳號來加密,執行帳號當然不能解密了。

我這時找 Google 大神,也找不到解法。難道這些內容太新了嗎?看了一下測試專案中UIMap.uitest的內容,哈哈!xml 果然容易了解。將有問題的網頁,將 Encoded=”true” 改成 false, 並將內容改成明碼的密碼後,就解決了這次的問題。

<SetValueAction UIObjectName="UIMap.UIGoogleWindowsInterneWindow.UIDocument.UI_txtPasswordEdit">
  <ParameterName />
  <Value Encoded="true">vDeufj/Hr41sx0RsGlhIlhfWB2QAYMfo</Value> <!-- Encoded :是否加密-->
  <Type>String</Type>
</SetValueAction>

 

 

參考

2010年5月25日 星期二

Delete workitem in TFS 2010

在 TFS 2010 中刪除 workitem 和以往的 TFS 2008 不一樣。

原因是 workitem 的管理需求太大了,因此將 power tool 中的workitem 部份獨立出來,成為 witadmin。

因此,要刪除 workitem ,在 TFS 2010 中需下如下的指令

Usage: witadmin destroywi /collection:collectionurl /id:id [/noprompt]

Ex: witadmin destroywi /collection:http://tfs2010:8080/tfs/defaultcollection /id:8

2010年5月20日 星期四

連接 Visual Studio 2005 到 TFS 2010 的詳細步驟 (中文版)

上次提到了英文版的安裝。那繁體中文版呢?照著上次英文版的連結,下載檔案時改用繁中版的檔案,試著照做一次,會發現狀況不同於英文版,也就是說不work啦!

安裝

  1. 安裝 Visual Studio 2005 CHT
  2. 安裝 Team 總管 2005。
  3. 安裝 Visual Studio 2005 SP1
  4. 安裝 VSTS 2005 相容 2010 套件

注意!步驟2不能使用這裡的連結哦!安裝這個img 檔案,在「新增/移除程式」中看到的是 Team Explorer 2005 - ENU,也就是英文版。所以行不通也。這時只好到 MSDN Subscriptions 下載 Team Foundation Server 2005 繁中版,拿它裡面的Team 總管來安裝中文的 Team 總管 2005。

在安步驟34時,安裝程式會重複安裝兩次。必須讓安裝程式完整地安裝完畢,否則會無法連接 TFS 2010

例如在步驟3,雖然只點擊執行一次,但安裝程式會執行兩次,一次更新步驟1的 VS2005 為 VS2005 sp1,第二次則更新步驟2的 Team Explorer 2005 為Team Explorer 2005 sp1。故會安裝兩次。

相同地,步驟4也會安裝兩次,分別更新 VS2005 sp1 及 Team Explorer sp1,讓這兩個產品得以連接 TFS 2010。

設定

接下來,就可以設定 Team Foundation Server。使用 工具 \  連接到 Team Foundation server…

clip_image002

輸入時,必須輸入 http://tfsServer:8080/tfs/CollectionName 如下的測試範例

clip_image004

如果沒有照順序安裝,則上一步輸入 Url 時,Port number 不會變成 disabled 的狀態。

結論

老外對於繁中版好像愈來愈不照顧了。為了之後開發方便,建議大家之後還是使用英文版來開發,比較不會踩地雷。

20140505

Connecting to TFS from any version of Visual Studio 詳細記載了所有的版本連接方式

2010年5月19日 星期三

連接 Visual Studio 2005 到 TFS 2010 的詳細步驟 (英文版)

前提到了 舊版 Visual Studio (2005, 2008) 連接到 TFS 2010。其中內容太過簡潔。下面則是 VS2005 完整的安裝步驟,順序不能錯誤,否則無法連接到 TFS2010。

安裝
  1. 安裝 Visual Studio 2005
  2. 安裝 Team Explorer 2005
  3. 安裝 Visual Studio 2005 SP1
  4. 安裝 VSTS 2005 相容 2010 套件

注意!在安步驟3及4時,安裝程式會重複安裝兩次。必須讓安裝程式完整地安裝完畢,否則會無法連接 TFS 2010。

例如在步驟3,雖然只點擊執行一次,但安裝程式會執行兩次,一次更新步驟1的 VS2005 為 VS2005 sp1,第二次則更新步驟2的 Team Explorer 2005 為Team Explorer 2005 sp1。故會安裝兩次。

相同地,步驟4也會安裝兩次,分別更新 VS2005 sp1 及 Team Explorer sp1,讓這兩個產品得以連接 TFS 2010。

我在這個地方等太久了,耐不住性子下就冒然取消,之以就無法連接 TFS 2010 了。害我又錯怪了 MS …

設定

接下來,就可以設定 Team Foundation Server。使用 Tools \  Connect to Team Foundation server…

image

輸入時,必須輸入 http://tfsServer:8080/tfs/CollectionName 如下的測試範例

image

如果沒有照順序安裝,則上一步輸入 Url 時,Port number 不會變成 disabled 的狀態。

另外,要強調的是這裡的網址連結都是英文版的哦!繁體中文版的連結不 work!!!! 驚訝吧!

Build failured 時Create WorkItem 給指定的帳號

問題

當 TFS daily build 失敗時,TFS 預設會自動建立一個 WorkItem (bug) 給執行帳號。這個執行帳號等同於當初建立 TFS 環境的 TFSService 帳號。

問題 TFSService 這個帳號是沒有人在處理的。換句話說,當 bug 指定給 TFSService,沒有人會自動分擔該帳號的 bug。因此建立一個 Team Project 時,就應該指定一個 Build Manager,專案負責該專案建置的問題。

好了,找到了一個人,就稱為 Charles好了。那我們該如何在 TFS 中設定呢?當然我們希望 Build failure 後,直接指定 workitem 給 Charles,而不是給預設的 TFSService。

解法 for TFS 2008

在TFS 2008 時,建置的設定都在 TFSBuild.proj。這個檔案是 xml,因此修改這個 xml 後並 check in 後,就完工了。

首先展開 Team Project ,在 Builds 下找到要修改的 Build definition,按右鍵執行 View Configuration Folder

image

再來修改(並 check out)TFSBuild.proj。找到 WorkItemFieldValues,並加上 Assigned to=Charles; 完成後記得 check in 回 TFS 哦。

<WorkItemFieldValues>System.Reason=Build Failure;System.Description=Start the build using Team Build;Assigned to=Charles;</WorkItemFieldValues>

此後,晚上再有 build failure ,就會指定給 Charles 了。這個Charles 的值,必須參考建立 WorkItem 時 Assigned to 的下拉框的值。

image

解法 for TFS 2010

待完成。到了 TFS 2010 後,TFSBuild.proj 已經改用 Workflow Foundation 來設定了。因此,必須修改 xaml 或使用 WF designer 來設計。

2010年5月17日 星期一

連接 Visual Studio 2008 到 TFS 2010 的詳細步驟

之前提到了 舊版 Visual Studio (2005, 2008) 連接到 TFS 2010。其中內容太過簡潔。下面則是 VS2008 完整的安裝步驟,順序不能錯誤,否則無法連接到 TFS2010。

安裝

  1. 安裝 Visual Studio 2008
  2. 安裝 Team Explorer 2008
  3. 安裝 Visual Studio 2008 Service Pack 1
  4. 安裝 VSTS 2008 相容 2010 套件

設定

接下來,就可以設定 Team Foundation Server。使用 Tools \  Connect to Team Foundation server…

image

輸入時,必須輸入 http://tfsServer:8080/tfs/CollectionName 如下的測試範例

image

如果沒有照順序安裝,則上一步輸入 Url 時,Port number 不會變成 disabled 的狀態。

Share with Facebook