因為工作的地方的檔案版本控管是使用 TFS,而上版是要整理好修改的檔案,書寫說明後,壓成壓縮檔後寄出,而不是自己說想說改過哪些檔案就直接簽入了,算比較麻煩

那為了節省我找出我倒底變更哪些檔案,並將檔案整理成制式的 Excel 報表,我就去研究 TFS API

透過這樣的 API 我可以達到取得暫止的變更的檔案清單,並勾選檔案後自動複製到指定的目錄及產生檔案的 Excel 清單,而 Excel 我是透過 NPOI 產生,這未來有機會再寫篇文章來介紹!

節省我去一個一個目錄翻檔案的工作時間,當然,應該也是可以寫出一個取得變更集的 API ,但目前沒去找資料

正題開始,要使用 TFS API ,首先要引用

  • Microsoft.TeamFoundation.Client
  • Microsoft.TeamFoundation.VersionControl.Client
  • Microsoft.TeamFoundation.VersionControl.Common

但這三個參考都沒辦法直接在 加入參考 中的 .Net 參考直接找到,最後我找了文章,他是放在

C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies\

目錄裡面,將這三個加入參考後,就能使用一些常用的 TFS 功能了(其中我的 Visual Studio 是 2008 ,所以是在 Visual Studio 9.0 找,不同的 VS 可能會在不同的版本號)。

 

上面是我撰寫的程式碼,主要會將所有暫止的變更且檔案絕對路徑開頭與 sourcePath 變數值相符的全加進去 checkListBox1 清單列表

然後當檔案符合 re1 正規式的話,則不勾選該選項。

 


 

Reference

http://stackoverflow.com/questions/3413527/how-to-connect-with-tfs-and-get-list-of-projects-for-a-specific-user
http://stackoverflow.com/questions/269425/list-of-files-with-pending-changes-in-vs2008-tfs-to-clipboard
http://blogs.msdn.com/b/buckh/archive/2012/03/10/team-foundation-version-control-client-api-example-for-tfs-2010-and-newer.aspx

文章標籤
創作者介紹

天翼翔幻

MyWCT 發表在 痞客邦 PIXNET 留言(0) 人氣()