我找到了一个满足我需要的简单解决方案,它基于一个小批量脚本,您必须单击它。即使您仍然可以创建批处理文件的快捷方式,也可以说它不是快捷方式。
这是脚本:
CALL "%VS100COMNTOOLS%\..\..\VC\vcvarsall.bat" x86
REG ADD "HKCU\Software\Microsoft\VisualStudio\10.0\TeamFoundation\SourceControl\Explorer\<GUIDofTFS>" /v "SceMostRecentPath" /d "$/<PathToTfsProject>" /f
devenv /Command View.TfsSourceControlExplorer
事实上,我结合了在不同来源中找到的 2 个想法:
1. Start VS with Source Control Explorer
2. Manipulate Registry to open Source Control Explorer in a specific path
使用devenv /Command View.TfsSourceControlExplorer 命令,您实际上可以启动VS 并自动打开源代码管理资源管理器。不幸的是,没有办法给出一个参数来直接指向你想要的位置。但我注意到 VS2010 似乎保留了最后使用的路径,并在重新启动时重新打开到那个地方。快速研究导致注册表项
HKCU\Software\Microsoft\VisualStudio\10.0\TeamFoundation\SourceControl\Explorer\058104ed-f0e2-4126-9ccc-0e37e19c4f91\SceMostRecentPath
通过操纵SceMostRecentPath 的值,您可以欺骗VS2010 以打开带有路径的源代码管理资源管理器。
请记住:您需要将 058104ed-f0e2-4126-9ccc-0e37e19c4f91 替换为 TFS 安装的 GUID。
由于我们都使用 VS 2010,但安装路径不同,我通过使用 VS100COMNTOOLS 变量动态实现了路径。首先我们搭建TFS命令行环境:
CALL "%VS100COMNTOOLS%\..\..\VC\vcvarsall.bat" x86`
然后我们更改注册表:
REG ADD "HKCU\Software\Microsoft\VisualStudio\10.0\TeamFoundation\SourceControl\Explorer\[PutYourTfsGUIDHere]" /v "SceMostRecentPath" /d "$/<YourTfsPath>" /f
最后,我们使用 source Explorer 命令对 devenv.exe 进行简单调用:
devenv /Command View.TfsSourceControlExplorer