我正在尝试创建一个TFS Checkin策略扩展,以便在Visual Studio 2017中使用。扩展本身已经适用于VS2015向下(我试图更新Spartez扩展作为PR的前奏)
出于某种原因,每当我尝试在实验实例中运行它时,它似乎永远不会加载策略。
PkgDef上写着:
[$RootKey$\TeamFoundation\SourceControl\Checkin Policies]
"Spartez.TFS4JIRA.CheckInPolicy"="$PackageFolder$\Spartez.TFS4JIRA.CheckInPolicy.dll"
清单如下:
<PackageManifest Version="2.0.0"
xmlns="http://schemas.microsoft.com/developer/vsx-schema/2011"
xmlns:d="http://schemas.microsoft.com/developer/vsx-schema-design/2011">
<Metadata>
<Identity Id="e27e3a03-d421-4908-8c6c-bc68a9981069" Version="1.1.4" Language="en-US" Publisher="Spartez" />
<DisplayName>Spartez Issue Key Checkins Policy</DisplayName>
<Description xml:space="preserve">Issue Key Checkins Policy by Spartez.</Description>
<License>License.txt</License>
</Metadata>
<Installation>
<InstallationTarget Id="Microsoft.VisualStudio.Community" Version="[15.0]" />
</Installation>
<Dependencies>
<Dependency Id="Microsoft.Framework.NDP" DisplayName="Microsoft .NET Framework" d:Source="Manual" Version="[4.5,)" />
</Dependencies>
<Assets>
<Asset Type="Microsoft.VisualStudio.VsPackage" d:Source="File" Path="policies.pkgdef" />
</Assets>
<Prerequisites>
<Prerequisite Id="Microsoft.VisualStudio.Component.CoreEditor" Version="[15.0,16.0)" DisplayName="Visual Studio core editor" />
</Prerequisites>
</PackageManifest>
VS 2017在注册表设置方面已经有了相当大的变化。是否更改了tfs扩展的注册表位置?
答案 0 :(得分:2)
我几个小时都在挣扎。我通过将我的自定义策略项目引用的所有TFS和Visual Studio Nuget包升级到最新的预览版本(v15.113.0-preview)来修复它:
一对夫妇注意到:
答案 1 :(得分:0)
请查看以下文章 https://www.visualstudio.com/en-us/docs/tfvc/add-check-policies
Visual Studio 2017:必须通过团队资源管理器,tf.exe或Visual Studio扩展的pkgdef中声明的注册表项设置Visual Studio 2017中的签入策略。策略仅在您的计算机上应用Visual Studio 2017的单个安装。如果您安装了多个Visual Studio 2017,则需要在每个安装上设置签入策略。