什麼是 TFS 以及資料如何儲存在其中
Team Foundation Server(通常縮寫為 TFS)是一個 Microsoft 產品,提供原始碼管理(通過 Team Foundation 版本控制或 Git),報告,需求管理,專案管理(適用於敏捷軟體開發和瀑布團隊),自動構建和實驗室管理,測試和釋出管理功能。它涵蓋整個應用程式生命週期。TFS 可用作眾多整合開發環境的後端,但專為 Microsoft Visual Studio 和 Eclipse 量身定製。
好處:
- Team Foundation Server 提供了一組與現有 IDE 或編輯器配合使用的協作工具,因此你的團隊可以有效地處理各種形狀和大小的軟體專案。
- 使用無限的私有儲存庫儲存和協作程式碼。使用 Git 進行分散式版本控制以最大化協作或使用 Team Foundation 版本控制(TFVC)進行集中版本控制。
- 支援 AGILE 方法
- 支援多種語言和 IDE
- 允許第三方外掛整合
TFS 的型別:
- 線上
- 本地
線上由 Microsoft 的雲平臺 Windows Azure 提供支援,它不需要任何設定。使用者使用 Microsoft 帳戶登入以開始設定其帳戶,建立專案和新增團隊成員。在為期三週的開發週期中開發的新功能首先新增到線上版本中。這些功能以大約三個月的間隔遷移到本地版本作為更新。
Team Foundation Server 將所有變更集資料儲存在 SQL Server 資料庫中。它完整地儲存來自最新變更集的程式碼。然後它將 diff 儲存到以前的版本。將它儲存在 SQL Server 中的一個好處是它獲得了由事務提供的全部或全部儲存功能。TFS 的架構是集中的。這意味著所有原始碼都儲存在一個位置。在集中式體系結構中,TFS 伺服器本身可以被視為單點故障,但是在 Windows Server 作業系統中提供高可用性解決方案時,不一定如此。類似地,儲存實際原始碼位的 SQL Server 資料庫可以映象在多個伺服器上。TFS 控制元件旨在與最新版本的 Microsoft Visual Studio 無縫整合。但是,這並不意味著你無法將 TFS 版本控制與其他軟體開發產品一起使用。TFS 中的功能可分為以下幾個方面。 基本功能 - 檢入和檢出檔案鎖定 - 限制併發編輯分支和合並 - 使用不同版本的原始碼安全性 - 決定誰可以訪問版本控制資料以及如何
任何版本控制系統的基本功能包括檢入和退出檔案。為了支援併發性,TFS 允許對同一檔案進行多次檢出,但如果需要,可以禁用此功能。專案也可以獨佔鎖定,以便其他人無法在鎖定檔案時簽入或簽出檔案。如果在團隊專案設定中禁用了併發簽出,則在簽出時會自動在檔案上放置鎖定。分支和合並可以被認為是 TFS 中的高階功能,但是它們非常有用。分支的主要思想是獲取一組原始碼檔案並從這些檔案建立不同的版本。分支程式碼可以與原始原始檔分開存在。例如,如果你正在開發通用應用程式但需要為某個客戶製作專用版本,則可以從主源控制樹(主幹)分支客戶自定義。如果需要以後出現,你可以再次將自定義程式碼與原始源控制線組合在一起。這稱為合併。TFS 中的所有內容(Active Directory 使用者許可權版本控制除外)都儲存在中央 SQL Server 資料庫中。這包括團隊專案設定,檔案資料,變更集詳細資訊等。由於幾乎所有內容都位於中心位置,因此必須確保定期備份 SQL 資料庫並制定災難恢復計劃。要了解如何將版本控制整合到 Microsoft Visual Studio 中,你需要了解三個單獨的視窗(或窗格,取決於你的觀點):Source Control Explorer,Solution Explorer 和 Pending Changes 視窗。連線到 Team Foundation Server 例項後,解決方案資源管理器將允許你通過右鍵單擊專案直接從視窗簽出和簽入檔案。但是,預設情況下,只需在 Visual Studio 中開始編輯檔案時就會發生簽出。例如,如果你在編輯器中開啟 C#原始碼檔案並開始輸入,則會檢出該檔案。這通常是檢查檔案最方便的方法。解決方案資源管理器視窗顯示的小圖示可幫助你區分已鎖定,已簽出和已新增的檔案,等等。藍色鎖定圖示表示檔案是原始碼管理的一部分,但當前未簽出。紅色複選標記表示檔案已被簽出,並且黃色加號表示檔案已新增到專案中。在 TFS 中,檢出操作和獲取最新版本的操作是彼此分開的。實際上,這意味著在簽出檔案之前,你應該對要簽出的檔案執行獲取最新命令。只需右鍵單擊解決方案資源管理器中的專案,然後選擇獲取最新選單項即可完成此操作。若要更改此預設行為,可以選擇 Microsoft Visual Studio 的“工具/選項”選單命令,然後導航到“原始碼管理/ Visual Studio Team Foundation Server”部分。從這裡,你可以找到名為在結賬時獲取專案的最新版本的選項。原始碼控制視窗允許你獲得版本控制樹的更全面檢視。
要開啟視窗,請選擇“檢視/其他 Windows /原始碼管理資源管理器”選單命令,或雙擊 Visual Studio 的團隊資源管理器視窗中的原始碼管理節點。Source Control Explorer 視窗允許你檢視和操作版本控制樹中的檔案。你可以通過此視窗執行與在解決方案資源管理器中執行的操作相同的所有操作:例如,你可以簽入和簽出檔案,重新命名,刪除檔案等。不同之處在於使用 Source Control Explorer 視窗,你使用的檔案不需要是 Visual Studio 開發專案的一部分,例如 C#專案。例如,你可以將 Excel 電子表格新增到版本控制; 這是你可能不希望通過解決方案資源管理器執行的操作。每當你使用版本控制下的檔案進行編輯,新增或刪除它們時,Visual Studio 不會立即將更改提交回版本控制。相反,只有在檢查更改時才會執行此操作。與此同時,預設情況下,所有更改都儲存在掛起的更改列表中,可以通過 Pending Changes 視窗檢視。
Pending Changes 視窗顯示尚未簽入的檔案列表。該視窗還指示所請求的操作(新增,編輯,刪除或重新命名)。通常,你通過此視窗進行簽到,因為它允許你在單個操作中方便地簽入多個檔案。你還可以編寫註釋以附帶已簽入的檔案,並且可以使用這些檔案連結到 Team Foundation Server 工作項。總的來說,一個或多個原始檔,可選註釋和工作項關聯共同形成一個變更集。TFS 中的變更集始終以原子方式進行檢查,這意味著完成集在簽入中成功或失敗。變更集與唯一 ID 相關聯,稍後可以通過 Source Control Explorer 視窗檢視。在 TFS 版本控制中,變更集是一個基本概念,因為它是系統可以處理的最小變更集。變更集可以包含單個檔案或一組檔案。此外,它是報告的基礎,尤其是與工作專案一起使用時。