在TFS中對於版本控制是在WorkSpace工做區來控制的。服務器
首先咱們先整理WorkSpace的一些基本使用方法。app
CheckIn:遷入掛起的操做測試
CreateMapping:建立一個本地映射地址spa
Delete:刪除工做區版本控制
GetPendingChanges:獲取掛起的工做區code
Merge:合併工做項orm
PendAdd:排隊文件或一個文件夾添加到版本控制儲存庫server
PendBranch:計劃一個文件或文件夾的分支blog
PendDelete:隊列刪除文件或文件夾的從版本控制儲存庫隊列
PendEdit:編輯簽出文件從版本控制儲存庫
其次咱們經過一個實例來看看如何建立本地映射地址,獲取掛起工做區,排隊文件,遷入掛起等操做。
//TFSURI Uri tfsUri = new Uri("http://pc-20130113jkun:8080/tfs"); TfsTeamProjectCollection projectCollection = new TfsTeamProjectCollection(tfsUri); //設置版本控制Server VersionControlServer versionControl = projectCollection.GetService<VersionControlServer>(); //設置工做空間名稱 String workspaceName = String.Format("{0}-{1}", Environment.MachineName, "Test"); Workspace workspace = versionControl.GetWorkspace(workspaceName, versionControl.AuthorizedUser); //設置服務器文件夾 var serverFolder = "$/Calueng"; //設置本地映射文件 var localFolder = Path.Combine("C:\\Temp\\", "Test"); //設置爲工做目錄文件夾 var workingFolder = new WorkingFolder(serverFolder, localFolder); // 建立工做空間的本地映射地址 workspace.CreateMapping(workingFolder); // 獲取工做空間的文件而且下載全部文件 workspace.Get(); // 建立一個測試文件夾 String newFolder = Path.Combine(workspace.Folders[0].LocalItem, "測試文件夾"); Directory.CreateDirectory(newFolder); String newFilename = Path.Combine(newFolder, "測試文檔1.txt"); // 建立一個測試文件 using (var streamWriter = new StreamWriter(newFilename)) { streamWriter.WriteLine("這是測試文件的文字"); } //將這個文件排隊等待遷入TFS管理 workspace.PendAdd(Path.GetDirectoryName(newFilename), true); // 建立等待添加的文件項集合 var pendingAdds = new List<PendingChange>(workspace.GetPendingChanges()); // 將工做項CheckIn系統中 int changesetForAdd = workspace.CheckIn(pendingAdds.ToArray(), "這裏是備註消息"); Console.WriteLine("遷入了工做項 {0}", changesetForAdd); Console.ReadLine();
如需源碼請點擊 TFSTest2.rar 下載