Visual Studio 2015中的自定义TFS签入策略

时间:2017-06-20 15:31:57

标签: c# visual-studio-2013 visual-studio-2015 tfs regedit

前段时间我的团队开发了一个自定义的TFS签到策略,该策略在Visual Studio 2013中运行良好。我修改了从(12到14)的版本,使相同的规则适用于Visual Studio 2015。

对于VS2013,我有这些注册表项:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\12.0\TeamFoundation\SourceControl\Checkin Policies]
  "MyCheckInPolicy"="C:\\My\\MyCheckInPolicy2013.dll"

[HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio\12.0_Config\TeamFoundation\SourceControl\Checkin Policies]
"MyCheckInPolicy"="C:\\My\\MyCheckInPolicy2013.dll"

对于VS2015,我添加了注册表项:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\14.0\TeamFoundation\SourceControl\Checkin Policies]
      "MyCheckInPolicy"="C:\\My\\MyCheckInPolicy2015.dll"

它反映在以下注册表项

[HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio\14.0_Config\TeamFoundation\SourceControl\Checkin Policies]
    "MyCheckInPolicy"="C:\\My\\MyCheckInPolicy2015.dll"

我还添加了注册表项

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\14.0\TeamFoundation\SourceControl\Checkin Policies]
      "MyCheckInPolicy"="C:\\My\\MyCheckInPolicy2015.dll"

但我没有运气。我还在VS2015中打开了我的签到策略项目并重建了它(尝试针对各种不同的框架:4,4.5,4.5.1,4.5.2,4.6),但都没有运气。

任何人都知道为什么我无法在添加签到策略对话框中显示此策略?

1 个答案:

答案 0 :(得分:1)

请确保您引用了正确的程序集,请尝试按照以下步骤解决此问题。

  1. 在VS2015中打开签到政策项目

  2. 删除引用 Microsoft.TeamFoundation.VersionControl.Client.dll

  3. 添加TFS 2015参考版本,它应该在
  4.   

    C:\ Program Files(x86)\ Microsoft Visual Studio   14.0 \ Common7 \ IDE \扩展\ fronpghg.gen

    或者您可以通过在程序包管理器控制台中运行以下命令来安装 Microsoft Team Foundation Server Extended Client

      

    PM>安装包Microsoft.TeamFoundationServer.ExtendedClient   -Version 14.102.0

    1. 重建项目。

    2. 在Windows注册表中注册自定义策略

    3. 如果您的操作系统是64位,则必须在Wow6432Node下添加密钥,而不是在MSDN上声明的路径: HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ VisualStudio \ 14.0 \ TeamFoundation \ SourceControl \ Checkin政策

    4. 重新启动计算机,启动VS以检查自定义的签入策略。

    5. 参考:https://msdn.microsoft.com/en-us/library/bb668980.aspx?f=255&MSPPError=-2147217396