Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在使用另一个源代码管理插件时以编程方式启用TFS“源代码管理资源管理器”?(来自Visual Studio加载项)_C#_Mercurial_Tfs_Visual Studio Addins_Source Control Explorer - Fatal编程技术网

C# 如何在使用另一个源代码管理插件时以编程方式启用TFS“源代码管理资源管理器”?(来自Visual Studio加载项)

C# 如何在使用另一个源代码管理插件时以编程方式启用TFS“源代码管理资源管理器”?(来自Visual Studio加载项),c#,mercurial,tfs,visual-studio-addins,source-control-explorer,C#,Mercurial,Tfs,Visual Studio Addins,Source Control Explorer,我正在为VisualStudio2010+编写一个插件,它将充当MercurialTFS桥接器 外接程序当前的工作方式是从现有TFS项目中获取最新版本,并将其转换为本地Mercurial存储库,该存储库将TFS推送到中央存储区。获取最新版本时,它将通过TFS向下拉到一个TFS映射路径,然后提交给Mercurial的本地合并repo,最后移动到您的工作克隆repo中 因此,尽管如此,我还是希望能够使用TFS特性,就好像它没有使用另一个源代码管理插件,但实际上它使用的是VisualHG插件一样 我想

我正在为VisualStudio2010+编写一个插件,它将充当MercurialTFS桥接器

外接程序当前的工作方式是从现有TFS项目中获取最新版本,并将其转换为本地Mercurial存储库,该存储库将TFS推送到中央存储区。获取最新版本时,它将通过TFS向下拉到一个TFS映射路径,然后提交给Mercurial的本地合并repo,最后移动到您的工作克隆repo中

因此,尽管如此,我还是希望能够使用TFS特性,就好像它没有使用另一个源代码管理插件,但实际上它使用的是VisualHG插件一样

我想浏览源代码管理资源管理器并获取最新信息、签入等。我试图以最原始的方式完成这项工作,在切换窗口时,尝试触发Visual Studio动态切换源代码管理插件。我好像没办法让它工作,我找不到钩子


如果有人知道如何以编程方式切换源代码管理,或者如何激活TFS资源管理器本身。

。这听起来像是一个挑战。您是否考虑过使用.NET SDK来代替它?这是相当容易得到一个工作区,只是做一个得到的方式。我可以通过编程访问TFS api来执行我的功能。我只是想通过允许TFS桥接的用户仍然使用TFS工具来改善Visual Studio的体验,因为我的方法仍然使用TFS,这不应该是一个问题。问题是,当TFS未被选为当前源代码管理插件“源代码管理资源管理器”窗口时,该窗口会禁用自身。有最终解决方案吗?似乎这个问题的答案是:dte.ExecuteCommandView.tfssourcetrolexplorer;好这听起来像是一个挑战。您是否考虑过使用.NET SDK来代替它?这是相当容易得到一个工作区,只是做一个得到的方式。我可以通过编程访问TFS api来执行我的功能。我只是想通过允许TFS桥接的用户仍然使用TFS工具来改善Visual Studio的体验,因为我的方法仍然使用TFS,这不应该是一个问题。问题是,当TFS未被选为当前源代码管理插件“源代码管理资源管理器”窗口时,该窗口会禁用自身。有最终解决方案吗?似乎这个问题的答案是:dte.ExecuteCommandView.tfssourcetrolexplorer;