Visual Studio 2015 年自定义 TFS 签入政策
Custom TFS Check-In Policy in Visual Studio 2015
不久前,我的团队开发了一个自定义的 TFS 签入策略,它在 Visual Studio 2013 上运行良好。我修改了版本(12 到 14),使相同的规则适用于 Visual Studio 2015.
对于 VS2013,我有这些注册表项:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio.0\TeamFoundation\SourceControl\Checkin Policies]
"MyCheckInPolicy"="C:\My\MyCheckInPolicy2013.dll"
和
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio.0_Config\TeamFoundation\SourceControl\Checkin Policies]
"MyCheckInPolicy"="C:\My\MyCheckInPolicy2013.dll"
对于 VS2015,我添加了注册表项:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio.0\TeamFoundation\SourceControl\Checkin Policies]
"MyCheckInPolicy"="C:\My\MyCheckInPolicy2015.dll"
它反映在以下注册表项中
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio.0_Config\TeamFoundation\SourceControl\Checkin Policies]
"MyCheckInPolicy"="C:\My\MyCheckInPolicy2015.dll"
我还添加了注册表项
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio.0\TeamFoundation\SourceControl\Checkin Policies]
"MyCheckInPolicy"="C:\My\MyCheckInPolicy2015.dll"
但我运气不好。我还在 VS2015 中打开了我的签入政策项目并重建了它(试图针对各种不同的框架:4、4.5、4.5.1、4.5.2、4.6),但都没有成功。
有人知道为什么我无法在“添加签入策略”对话框中显示此策略吗?
请确保您引用了正确的程序集,请尝试按照以下步骤解决此问题。
在VS2015中打开你的签到策略项目
删除引用 Microsoft.TeamFoundation.VersionControl.Client.dll
- 添加TFS 2015参考版本,应该在
下
C:\Program Files (x86)\Microsoft Visual Studio
14.0\Common7\IDE\Extensions\fronpghg.gen
或者您可以通过 运行 在程序包管理器控制台中的以下命令安装 Microsoft Team Foundation Server Extended Client
PM > Install-Package Microsoft.TeamFoundationServer.ExtendedClient
-Version 14.102.0
重建项目。
在 Windows 注册表中注册自定义策略
如果你的OS是64位的,你必须在Wow6432Node下添加密钥,而不是MSDN上声明的路径:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio.0\TeamFoundation\SourceControl\Checkin 政策
重启电脑,启动VS查看自定义签入策略
参考:https://msdn.microsoft.com/en-us/library/bb668980.aspx?f=255&MSPPError=-2147217396
不久前,我的团队开发了一个自定义的 TFS 签入策略,它在 Visual Studio 2013 上运行良好。我修改了版本(12 到 14),使相同的规则适用于 Visual Studio 2015.
对于 VS2013,我有这些注册表项:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio.0\TeamFoundation\SourceControl\Checkin Policies]
"MyCheckInPolicy"="C:\My\MyCheckInPolicy2013.dll"
和
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio.0_Config\TeamFoundation\SourceControl\Checkin Policies]
"MyCheckInPolicy"="C:\My\MyCheckInPolicy2013.dll"
对于 VS2015,我添加了注册表项:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio.0\TeamFoundation\SourceControl\Checkin Policies]
"MyCheckInPolicy"="C:\My\MyCheckInPolicy2015.dll"
它反映在以下注册表项中
[HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio.0_Config\TeamFoundation\SourceControl\Checkin Policies]
"MyCheckInPolicy"="C:\My\MyCheckInPolicy2015.dll"
我还添加了注册表项
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio.0\TeamFoundation\SourceControl\Checkin Policies]
"MyCheckInPolicy"="C:\My\MyCheckInPolicy2015.dll"
但我运气不好。我还在 VS2015 中打开了我的签入政策项目并重建了它(试图针对各种不同的框架:4、4.5、4.5.1、4.5.2、4.6),但都没有成功。
有人知道为什么我无法在“添加签入策略”对话框中显示此策略吗?
请确保您引用了正确的程序集,请尝试按照以下步骤解决此问题。
在VS2015中打开你的签到策略项目
删除引用 Microsoft.TeamFoundation.VersionControl.Client.dll
- 添加TFS 2015参考版本,应该在 下
C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\Extensions\fronpghg.gen
或者您可以通过 运行 在程序包管理器控制台中的以下命令安装 Microsoft Team Foundation Server Extended Client
PM > Install-Package Microsoft.TeamFoundationServer.ExtendedClient -Version 14.102.0
重建项目。
在 Windows 注册表中注册自定义策略
如果你的OS是64位的,你必须在Wow6432Node下添加密钥,而不是MSDN上声明的路径: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio.0\TeamFoundation\SourceControl\Checkin 政策
重启电脑,启动VS查看自定义签入策略
参考:https://msdn.microsoft.com/en-us/library/bb668980.aspx?f=255&MSPPError=-2147217396