我有一个绑定到Visual SourceSafe遗留项目和与Visual Studio 2003。现在,我最近安装了Visual Studio 2017年和TFS在同一台机器上完成。
现在,当我尝试打开绑定到Visual SourceSafe我得到的错误序列中的传统项目。下面的截图(pixeled为confidenciality原因)。
这似乎打开时遗留项目(绑定到Visual SourceSafe)与传统的Visual Studio 2003中,它会尝试连接到服务器TFS像(显然它不能)。这是发生,因为我已经安装了新的Visual Studio 2017年和TFS在同一台机器,就好像他们不能在同一台机器一起生活。那么,如何保持双方VSS和TFS安装在同一台机器?可能吗?
更新:它看起来像VS2003不允许切换SCC提供商。唯一的办法是破解注册表进行切换。
我已经发现了一些有趣的事情,解释如何做到这一点,似乎工作,问题是,一些环节被打破,他们是太旧,无法使用了。
Source safe with Team Foundation Server in VS.2003 Installed TFS Version Control Provider and Now my VS 2003 Projects lost connectivity to VSS 2005? MSSCCI Provider installation error
在上述链接规定,包括对黑客攻击的注册表,但他们提供的链接断开的解决方案:
更新2:正如爱德华·汤姆森在他的回答已经暗示,我创建了一个新的密钥“HKCU \软件\微软\ VisualStudio的\ 7.1 \ CurrentSourceControlProvider \”,用字符串值设置:ProviderRegKey =“SOFTWARE \微软\ SourceSafe的”。下面的截图,但它不工作:
MSSCCI是微软源代码控制集成API,它是由Visual源安全的IDE工具如Visual Studio提供的原始API。早期的Visual Studio版本(如2003)只说MSSCCI,和预期的版本控制提供商提供MSSCCI。其结果是,你只能有一个版本控制提供商来说该协议。
在Team Foundation Server客户端API提供MSSCCI(对于Team Foundation版本控制而已,不是GIT)。因此,如果你想使用Visual Source Safe中,您将需要配置Visual Studio来告诉那组库,而不是TFS的API集。
在稍新一些的版本的Visual Studio(如Visual Studio 2008),你可以选择在飞行您MSSCCI提供商,在选项>源代码管理>插件选择。所有MSSCCI供应商将被枚举,您可以Visual源安全和Team Foundation版本控制之间进行选择。
如果你正在使用Visual Studio的早期版本是没有这个选项,那么你可以通过直接更新注册表更改MSSCCI提供商。
找到注册表项:
HKCU\Software\Microsoft\VisualStudio\7.1\CurrentSourceControlProvider\
并设置:
ProviderRegKey="SOFTWARE\Microsoft\SourceSafe"
更新7.1
与已安装在Visual Studio版本的密钥(Visual Studio 2003中对应于7.1版本)。
一旦你做了这些改变,你将无法使用的Team Foundation尔松控制从Visual Studio 2003中不改变该回来了。