如果給定tfs中的特定文件夾路徑,我需要遞歸查找文件夾內給定變更集的所有文件和文件夾。換句話說,我需要在給定的變更集中獲得tfs路徑的傳遞閉包。我這樣做的問題是列出tfs中的特定文件夾的內容.. 這將如何在C#中可能?列出tfs中文件夾的所有內容
回答
我假設你想「文件夾中的內容作爲變更X的」,而不是
「那名變更X的部分文件夾內容」GetIte MS是使用正確的判罰,只是傳遞一個版本規格爲您所感興趣的變更
http://msdn.microsoft.com/en-US/library/bb138911.aspx
因此,假設你已經有了一個對VersionControlServer實例的引用:
var myFolderAtChangeset17 = versionControlServer.GetItems("$/MyFolder", new ChangesetVersionSpec(17), RecursionType.Full);
如果我誤解你碰巧想「那名變更X的部分文件夾內容」,有這樣做,但得到的變更與GetChangeset,只是過濾Changes是很簡單的幾個不同的方法。
您可以使用changeset webservice獲取包含特定變更集的所有已更改項目的XML文檔。然後,只需循環查看已更改項目的列表,看看它們是否在您正在尋找的路徑中。
這裏的URL到變更Web服務:
的http:// your_tfs_server
/VersionControl/Changeset.aspx?artifactMoniker= your_changeset_number
& webView的=真
像這樣的東西可能會更你在找什麼對於。這將獲取變更集中的所有更改並遍歷它們,從而識別給定路徑中的變更。這可以通過LINQ查詢被縮短,但我離開它多一點膨脹,得到什麼,我想說的要點:
TeamFoundationServer tfs = new TeamFoundationServer("http://tfs:8080");
VersionControlServer vcs = tfs.GetService<VersionControlServer>();
Changeset cs = vcs.GetChangeset(6284868);
foreach (Change change in cs.Changes)
{
if (change.Item.ServerItem.StartsWith("$/Application Common/Dev/src"))
{
System.Diagnostics.Debug.WriteLine(string.Format("Changeset {0}, file {1}, changes {2}",
cs.ChangesetId, change.Item.ServerItem, change.ChangeType.ToString()));
}
}
我覺得像這樣的工作..
TeamFoundationServer tfs = new TeamFoundationServer("http://tfs:8080");
VersionControlServer vcs = tfs.GetService();
ItemSet items;
items = vcs.GetItems(tfsPath, RecursionType.Full);
如果您有任何其他想法,請把它們..
你的代碼丟失,可以定義tfsPath傳遞給GetItems – 2011-10-04 21:09:01
- 1. 列出文件夾內容時出錯
- 2. 刪除所有文件夾的內容
- 3. 列出所有文件夾中的所有文件在一個列表中
- 4. 如何列出文件夾內容 - 文件夾
- 5. 列出文本文件中的所有文件夾名稱
- 6. 列出所有組文件夾
- 7. C - 列出文件夾和所有子文件夾中包含的文件
- 8. 列出Google Drive SDK中的所有文件夾及其文件
- 9. 刪除lsof在文件夾中未列出的所有文件
- 10. .htaccess重定向根文件夾中的所有內容
- 11. Mercurial/.hgignore - 如何忽略文件夾中的所有內容?
- 12. 如何從jsp上傳文件夾中的所有內容
- 13. 如何列出c#中.zip文件夾的內容?
- 14. 從swf中列出本地文件夾的內容
- 15. 如何在列表框中列出搜索文件夾的內容(文件)
- 16. 使子文件夾成爲子文件夾中的所有內容的根文件夾
- 17. 使用Spring MVC上傳包含子文件夾的所有文件夾內容
- 18. 宏以列出文件夾和子文件夾中的所有工作表
- 19. 使用CakePHP 2.x列出文件夾和子文件夾的內容
- 20. 閱讀文件夾中的所有文件並在Excel中顯示內容
- 21. 與所有文件夾兼容的cookie
- 22. 在JavaScript中上傳文件夾及其所有內容
- 23. 刪除文件中的所有內容
- 24. 列出所有文件和文件夾的大小爲
- 25. 使用Dropbox API列出Dropbox的所有文件夾和文件
- 26. 如何使用FolderBrowserDialog列出所選文件夾中的所有文件?
- 27. Visual Studio 2008 - 查找文件:列出所有內容兩次
- 28. 構建文件夾中的TFS沒有發佈文件夾
- 29. 列出我的目錄中的所有文件夾visual basic
- 30. 紅寶石 - 得到目錄中的文件沒有列出所有內容
我不知道該版本的規範的一部分。這是我想要的。謝謝... – Sidd 2010-07-14 15:28:58