Вопрос по visual-studio-2013, checkin-policy, vsix – VS 2013 не видит мои собственные правила регистрации

2

У меня есть пользовательские политики регистрации, развертываемые через VSIX. Сейчас я пытаюсь использовать их в Visual Studio 2013.

Что я сделал: Я открыл свои политики в VS 2013. Изменил «Установить цели» в vsixmanifest на [10.0, 13.0). Затем собрал проект, установил VSIX и открыл оба VS.

Проект VSIX использует .NET Framework 4.5, проект политик использует 4.0.

Что у меня есть:

Последняя версия моей политики вC:\Users\...\AppData\Local\Microsoft\VisualStudio\12.0Exp\Extensions каталогКопии политик на 2012 и 2013 гг. VS вC:\Users\...\AppData\Local\Microsoft\VisualStudio\11.0(and 12.0)\ExtensionsКлюч с путем к политикам в реестре для обоих VS вHKEY_CURRENT_USER\Software\Microsoft\VisualStudio\11.0_Config(and 12.0_Config)\TeamFoundation\SourceControl\Checkin Policies

Теперь, когда я хочу применить их вTeam Project Settings -> Source Control -> Check-in Policy -> AddЯ могу выбрать свои собственные политики в VS 2012, но VS 2013 просто не видит их.

Что я могу сделать, чтобы это исправить?

UPD:

Итак, я решил свою проблему, изменив версию сборкиMicrosoft.TeamFoundation.VersionControl.Client с 11,0 до 12,0А ТАКЖЕ Версия .NET Framework в проекте политики от 4.0 до 4.5

Не то, чтобы я знал, извините. Joachim Isaksson
Политики регистрации ссылаются на некоторые сборки, которые зависят от версии Visual Studio, вам нужно изменить ссылки на VS2013 и перекомпилировать. Joachim Isaksson
@JoachimIsaksson спасибо, это помогло! но теперь VS2012 не видит политики. Есть ли лучший способ сделать политики для обоих VS, чем положить два VSD с разными версиями для VSIX? Дмитро Кононенко

Ваш Ответ

2   ответа
2

пользовательская политика, работающая на VS 2008/2010, неправильно устанавливается в vs2013. Наконец, я открыл проект пользовательской политики в VS 2013, затем прочитал ссылку на Microsoft.TeamFoundation.VersionControl.Client и скомпилировал ее. Теперь он работает и признается в качестве той же политики, что VS2010.

6

версия .NET и ссылочной объектной модели клиента:

Для Visual Studio2005, вам нужно сослаться на8.0.0.0 сборки и ваш проект должен быть проектом AnyCPU .NET 2.0.Для Visual Studio2008, вам нужно сослаться на9.0.0.0 сборки и ваш проект должен быть проектом AnyCPU .NET 3.0.Для Visual Studio2010, вам нужно сослаться на10.0.0.0 сборки и ваш проект должен быть проектом AnyCPU .NET 4.0.Для Visual Studio2012, вам нужно сослаться на11.0.0.0 сборки и ваш проект должен быть проектом AnyCPU .NET 4.0.Для Visual Studio2013, вам нужно сослаться на12.0.0.0 сборки и ваш проект должен быть проектом AnyCPU .NET 4.5.Для Visual Studio2015, вам нужно сослаться на14.0.0.0 сборки и ваш проект должен быть проектом AnyCPU .NET 4.6.

Если у вас установлено несколько версий Visual Studio, вам необходимо развернуть сборку несколько раз, по одному для каждой версии Visual Studio. Эти сборки должны иметь одинаковыеAssemblyName и то же самоеAssemblyVersion и быть подписанным с таким же строгим именем.

Каждая из политик должна быть зарегистрирована в реестре под следующими ключами:

HKEY_LOCAL_MACHINE\Software\Microsoft\VisualStudio\{VisualStudioVersion}\TeamFoundation\SourceControl\Checkin PoliciesHKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\{VisualStudioVersion}\TeamFoundation\SourceControl\Checkin Policies (Только 64-битная ОС)HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\{VisualStudioVersion}_Config\TeamFoundation\SourceControl\Checkin Policies (должно быть добавлено автоматически при запускеdevenv /setup)

A Более подробное прохождение можно найти в моем блоге..

Пока я тоже использую разные vsix, я предлагаю опубликовать новый вопрос для этого. jessehouwing
Я использую VSIX для распространения моих политик регистрации на VS 2012 и VS 2013? У меня это работает с использованием двух отдельных проектов VSIX; тот, который нацелен на 2012 год, а другой на 2013 год? Поскольку сборки политики регистрации 2012 и 2013 годов должны иметь одинаковое AssemblyName, есть ли способ развернуть обе версии VS с помощью одного проекта пакета VSIX? Благодарю. deadlydog

Похожие вопросы