我有一个小的内部视觉工作室扩展(VS 2013),对于一个功能,我需要弄清楚磁盘上的文件是否在TFS版本控制之下.
(通过"在TFS版本控制下",我的意思是TFS跟踪有问题的文件,以便可以检出,编辑,签入等)
以下代码是我今天所拥有的,只要您连接到TFS,它就可以正常工作.它使用工作区的实例
// m_workspace is of type Microsoft.TeamFoundation.VersionControl.Client.Workspace
var items = m_workspace.GetItems(
new[] {new ItemSpec(filename, RecursionType.None)},
DeletedState.Any,
ItemType.Any,
false,
GetItemsOptions.LocalOnly | GetItemsOptions.Unsorted);
return items.First().Items.Any();
Run Code Online (Sandbox Code Playgroud)
现在,问题是当您不在办公室防火墙内(或通过VPN连接)时,无法访问TFS服务器.实际上,主机名甚至都不会解析.
所以我的问题是:有没有其他方法让我知道文件是否受版本控制?最好使用公共API,但如果这就是它需要的话,我很好用一个丑陋的黑客...
小智 -1
你可以使用这个:
string underTfs = Microsoft.TeamFoundation.VersionControl.Client.Workstation.Current.IsMapped(path);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
869 次 |
| 最近记录: |