教程:VS2010 之TFS入門指南
本月初,我們發(fā)布了TFS新基礎(chǔ)配置。該配置為建立支持源碼管理,工作項和生成(builds)的TFS版本提供了便利。 這是一個好機會將你在VSS(Visual Source Safe)上的資源遷移到TFS,并且還可以選用一些新的特性。現(xiàn)在VS2010 Beta2的正式版已經(jīng)發(fā)布了,下面是該系統(tǒng)的入門指南。
這篇文章對那些還沒有安裝或使用過TFS的人將最有幫助。TFS有對復(fù)雜環(huán)境的良好支持。比如,報表,SharePoint的整合,支持跨多域,分布式數(shù)據(jù)庫等等。不過我不打算在這里講述其中的任何一個部分,我的目的是幫助你們了解為什么我們要選擇TFS,以及如何使用它。如果你是VSS的用戶, 在今后的文章中,我會講述如何將VSS數(shù)據(jù)庫遷移到TFS上。
在上圖中,每個系統(tǒng)都有獨立的存儲空間,資源標(biāo)識集,命令和工具集。要讓整個系統(tǒng)工作起來,就像把一組自定義立體組件聯(lián)接在一起:可以實現(xiàn),但工作量巨大,而且可能在一些地方出現(xiàn)紕漏。
我更想要的就是這樣一個系統(tǒng),它可以將這些工作整合到一起并實現(xiàn)我默認(rèn)的工作流程。
這個整合實現(xiàn)了一些非常常見的場景。例如每天我會編輯源代碼,生成產(chǎn)品并測試它,報Bug并修復(fù)它,周而復(fù)始。當(dāng)有一個整合的系統(tǒng)可以全部支持這些工作流程時,那么所有的工作就可以被關(guān)聯(lián)起來。例如,當(dāng)我簽入Bug的修復(fù)時,我很想看到那些缺陷被解決時這個變更集能被紀(jì)錄下來。(詳見下面的例子)
TFS的基礎(chǔ)配置可以讓你精確地做到這些。這跟簡單的源碼管理相比是一個巨大的進(jìn)步。TFS的完整版將會加入一些新的特性,包括自動化測試,虛擬實驗室的部署和架構(gòu)驗證。下面是擴展后的工作流程:
當(dāng)你使用Visual Studio 加強版和旗艦版的時候,你可以根據(jù)需要選擇安裝這些新組件。
有許多方法可以訪問TFS。開發(fā)人員經(jīng)常會通過Visual Studio來訪問它。測試人員可以通過新的Test and Lab Manager來訪問TFS(沒有必要安裝VS)。如果你是項目經(jīng)理,你也可以通過web接口,Excel,Microsoft Project,或者dashboards的MOSS支持(VS2010的新功能)來訪問TFS。更多相關(guān)內(nèi)容以后介紹。
在這篇文章的其余部分,我會向你們逐步介紹如何使用基礎(chǔ)配置來開始我們的第一個TFS工程。
入門指南
現(xiàn)在, 有了概念層次的了解,是時候把它們連接起來了。以Brian Harry的 TFS文章所列出的步驟為開端。所有必要的軟件會以默認(rèn)集合(創(chuàng)造性的稱為DefaultCollection)的形式安裝到你的機器上。
在這里我們能通過Visual Studio連接到TFS里。做到這一點最簡單的方法是使用菜單“團隊”(你也可以使用起始頁上的鏈接):
這里需要輸入TFS的服務(wù)器名稱。例如,我的Windows 7機器:JLZB2REL。通過添加按鈕把服務(wù)器加入到列表里, 然后點擊關(guān)閉:
在這里,你可以從組合框里選擇服務(wù)器,接著選擇DefaultCollection,然后點擊連接:
現(xiàn)在團隊資源管理器選項卡有了服務(wù)器連接和DefaultCollection,但我們還沒有一個可以存儲東西的TFS項目:
我為本教程創(chuàng)建了一個新的Windows窗體項目作為我們的解決方案樣本(文件,新建項目,Windows窗體)。如果你試圖添加新的代碼項目到源代碼管理,會出現(xiàn)錯誤。例如:
你選擇“將解決方案添加到源代碼管理”菜單項后,你會得到“沒有可用的團隊項目源代碼管理文件夾”的錯誤信息:
該錯誤不是很直觀(特別是所提供的詞項目是用于TFS和你們代碼解決方案里面,而它們是不同的概念)。此錯誤的意思是你必須創(chuàng)建一個真實的TFS項目去包含你工作中有用的資源。在團隊資源管理器中,右鍵點擊你的集合,選擇新建團隊項目:
在這里我將為應(yīng)付帳款系統(tǒng)創(chuàng)建一個TFS項目。該項目將包含整個系統(tǒng)所有需要的解決方案,數(shù)據(jù)等。填寫完資料,點擊下一步:
默認(rèn)的是Agile模板,但你也可以選擇CMMI模板。關(guān)于模板類型你可以在MSDN上獲取更詳細(xì)的說明。如果你正在使用agile方法(比如TDD),這是個不錯的選擇。選擇后,點擊完成。
項目創(chuàng)建過程中,會有各種狀態(tài)更新。
成功后,點擊關(guān)閉按鈕:
團隊資源管理器顯示了該項目,將包含工作項,生成和源代碼管理:
此時可以更新項目集合。再增加一個解決方案到TFS中:右擊解決方案資源管理器中的項目,選擇“將解決方案添加到源代碼管理”:
此時可以在TFS中為解決方案新建一個文件夾或者只是采用默認(rèn)值。如果準(zhǔn)備好了,請點擊確定。
到此就可以在解決方案資源管理器中看到所有文件已經(jīng)在源碼管理下了。(查看文件前面的“+”號)
此時可以看到列出的源代碼管理器可采取的公開解決方案的動作。添加注釋然后點擊簽入:
點擊是確認(rèn)簽入。
此時新的解決方案就在TFS中了,并且可以開始工作項了。
工作項
可以直接在Visual Studio里用團隊資源管理器或者通過網(wǎng)頁前端和Test and Lab Management工具 來創(chuàng)建工程項目。打開團隊資源管理器,并展開工作項下的Team Queries項來瀏覽你的工程項目。也可以通過雙擊任意查詢選項(例如Active Bugs)來瀏覽任意你所能看到的項目。
因為我們的TFS工程是空的,所以在列表中沒有active Bug。
創(chuàng)建一個新的bug,選擇菜單:團隊,新建工程項。這里可以創(chuàng)建多種工作項來跟蹤功能點,缺陷等等。選擇Bug繼續(xù):
為這個新的Bug填入相關(guān)資料,然后點擊保存工程項來提交到數(shù)據(jù)庫中。
如果現(xiàn)在刷新Active Bug查詢列表,你會看到這個新的Bug:
現(xiàn)在添加一個真正的Bug來修復(fù)我們的工程。在我的例子中,只是創(chuàng)建了一個默認(rèn)的Windows Forms應(yīng)用程序。如要更新標(biāo)題:
現(xiàn)在我們需要修復(fù)這個Bug。重新回到解決方案資源管理器,選擇Form1.cs,然后選擇“簽出以進(jìn)行編輯”:
點擊“簽出”按鈕來確定:
現(xiàn)在在文件的旁邊會有一個打勾的標(biāo)記,這樣你就知道它已經(jīng)可以編輯了:
當(dāng)你更新主窗口的Text屬性時,VS會自動簽出任何依賴的文件:
這個例子雖然是一個Windows Forms應(yīng)用程序,但它也支持其他所有的solution/project類型。現(xiàn)在我們對代碼改動滿意了,在VS的底部選擇“掛起的更改”標(biāo)簽。
在這個例子中,我們修復(fù)了一個Bug,所以點擊“工作項”圖標(biāo)按鈕:
選擇用來跟蹤我們標(biāo)題錯誤的Bug#6。我們想要通過這個簽入來解決它:
添加注釋并點擊簽入,然后點擊“是”確認(rèn)。
如果刷新Bug#6,你會看到現(xiàn)在狀態(tài)已經(jīng)變?yōu)镽esolved,并且歷史紀(jì)錄已經(jīng)更新了。
請注意“變更集”(源碼管理改變的集合)已經(jīng)被自動添加到歷史紀(jì)錄中。
這時候可以按你工程需要繼續(xù)創(chuàng)建和修復(fù)Bug。
其他訪問TFS的方法
我前面提到過沒必要必須使用VS來訪問TFS。我們已經(jīng)將TFS與其它客戶端作了許多深層次的整合,例如網(wǎng)頁和Office。舉個例子,我可以通過網(wǎng)頁瀏覽器,很簡單地用服務(wù)器的名字連接到我的服務(wù)器(8080是默認(rèn)端口):http://jlzb2rel:8080/tfs/
現(xiàn)在我可以瀏覽我的集合和工程了。如果你選擇我們剛剛新建的AccountsPayable項目,然后點擊“繼續(xù)”按鈕,會看到更多的信息。在這個例子中,通過導(dǎo)航到Work Items標(biāo)簽,可以找到這個系統(tǒng)中所有的Bug。
這確實是一個瀏覽你的工程的簡單方法。可以在任何一臺電腦上,并且不需要安裝額外的東西。這些操作在Excel,Microsoft Project等其他軟件中也有相關(guān)的支持。這種訪問方式使該項目中的所有成員一起工作變得更加簡單。
此時,你擁有了一套非常有用的工具來輕松完成工作。如果你在使用VSS,僅僅是這些內(nèi)容就已經(jīng)令人興奮了。現(xiàn)在可以放下這個教程,休息會再回來,如果你想要嘗試一些高級屬性的話,例如測試場景。我會使用beta 1在這個教程中來演示。
生成支持
工作流程的下一個典型的環(huán)節(jié)就是自動生成產(chǎn)品。如果遵循Brian的安裝說明,那么現(xiàn)在你的機器上就有了TFS基本的本地生成支持。第一步是要導(dǎo)航到團隊資源管理器中,右鍵點擊“所有生成定義”,選擇“新建生成定義”:
有一系列的定義需要填,就像一個代碼項目的屬性頁:
觸發(fā)頁面使我們能夠決定生成何時開始。你可以從下列項中選擇:
·默認(rèn)情況下使用手動項。我們必須以這一項開始我們自己的生成。
·每一次簽入后,當(dāng)你想擁有一個新的生成的時候,持續(xù)集成是非常有用的。它允許你立刻驗證新的簽入而不用等很多的簽入混合在一起后再驗證。
·滾動生成提供了一種批處理改變的方法,當(dāng)開始生成要花一點時間并且你無法去做每一項時,這種方法很便利。
·封閉簽入讓你確保所有的簽入傳入TFS前被生成。并確保你不會對你項目組的其它成員造成生成破壞。
·計劃生成為整個團隊做每日生成進(jìn)行了有益的嘗試
可以創(chuàng)建和使用多個不同的生成定義,允許您根據(jù)不同的目的來使用不同類型的生成。
你可以在空閑的時候查看所有標(biāo)簽(每一項在產(chǎn)品上都完整的文檔說明). 但是我們需要提供給生成一個存儲新生成的位置來解決默認(rèn)生成中的黃色警告標(biāo)志,在這里,我在我的機器上創(chuàng)建了一個公共的UNC:
現(xiàn)在可以保存生成定義到TFS。如果回到團隊資源管理器,我們可以“使新的生成入隊”:
在跳出的確認(rèn)對話框中,選擇排隊:
這是我機器上狀態(tài)頁顯示的已排隊的一個生成:
如果雙擊隊列中的生成,可以得到這個生成的詳細(xì)狀態(tài):
從這里你可以看到警告和錯誤,日志文件,導(dǎo)航到Drop的目錄等。例如,如果你選擇“查看日志文件”,你能看到執(zhí)行生成的腳本(子集):
如果你選擇打開Drop文件夾鏈接,你會被帶到我們drop的位置:
現(xiàn)在任何人都可以選擇生成來做他們?nèi)粘y試,或發(fā)布給客戶等。
此時您已經(jīng)知道利用了TFS的基本配置所有東西。
將來我會做一個如何安裝使用虛擬實驗室系統(tǒng)的教程(Visual Studio 旗艦版的一部分),使您能夠部署復(fù)雜的應(yīng)用程序到Hyper - V的環(huán)境,做自動化測試。
創(chuàng)建一個新的TFS集合
[注意:這部分是完全可選的] 如果你喜歡你可以在一個TFS中存儲你所有的工作。如果你是一個Visual Source Safe用戶,你可以跳過這一整部分。但是如果你想創(chuàng)建一個新的頂級集合,相當(dāng)?shù)暮唵巍5谝徊绞菃樱缓笫菆F隊基礎(chǔ)管理控制臺:
控制臺啟動后,選擇“團隊項目集合項”, 點擊“創(chuàng)建團隊項目集合”鏈接:
為項目的收集填寫一個你想要描述的名稱后,點擊“下一步”:
接受數(shù)據(jù)層的默認(rèn)值,然后點擊“下一步”:
TFS基本配置不支持實驗室管理,因此直接下一步:
在這里所有需要的數(shù)據(jù)都被配置了,你可以選擇“核實”:
驗證這些信息主要是為了集合可以順利的創(chuàng)建:
當(dāng)核實結(jié)束后,點擊創(chuàng)建:
這一步為TFS的每一個配置提供所有需要的東西。點擊下一步就完成了:
你將會看到一個默認(rèn)版本的新項目集:
posted on 2010-09-19 15:07 常言笑 閱讀(1426) 評論(0) 編輯 收藏 所屬分類: 技術(shù)總結(jié)