2013-02-15 1 views
3

В нашей команде есть множество решений Visual Studio 2008 и Visual Studio 2012. VS08 используется по устаревшим причинам, главным образом потому, что проекты Smart Device не поддерживаются за пределами этой версии VS.Возможно ли иметь файл настроек Resharper 'inherit' из другого файла настроек?

В настоящее время мы используем один файл Resharper .DotSettings и передаем его через каждое решение VS2012 через слой в настройках Team Shared Solution для каждого решения. На данный момент это творит чудеса, хотя мы хотели бы также использовать «те же» настройки в наших VS08-решениях.

Уловка здесь заключается в том, что существует очень небольшое подмножество правил, которые были созданы специально для проектов .Net4 в этом общем файле .DotSettings, и они не должны быть видимыми для проектов .Net2 VS08. Например, в нем есть настраиваемое правило, которое предлагает преобразовать код проверки аргумента с исключениями из Contract.Requires<TException> вызовов.

В идеале должен быть создан файл настроек «base», который будет использоваться в каждом решении VS08, и «унаследованные» параметры, содержащие все настройки в базовом файле, а также дополнительные правила, характерные для VS12 решения. Обновление базового файла также должно сделать каждое решение с использованием унаследованного файла для обновления этого параметра.

Есть ли способ правильно справиться с этим, избегая нескольких клонов одного и того же файла и в то же время сохраняя возможность автоматического обновления настроек каждого решения при редактировании одного из файлов настроек?

Я думаю, что создание двух файлов (один с общими настройками и другой с только дополнениями .Net4) мог бы работать. В этом случае оба файла будут включены в виде слоев на каждое решение VS12, но только на решения VS08. Я не уверен, что это лучший подход в этом случае, и хотел бы услышать другие возможные варианты, так как мы предпочли бы сохранить только один уровень для каждого решения, поскольку это выглядит более легко поддерживаемым.

Мы используем последнюю версию Resharper, в настоящее время v7.1.1000.900.

ответ

0

Вы можете создать файл настроек, который отменяет некоторые параметры из файла основных настроек. Вот как это сделать:

  1. Убедитесь, что все основные настройки находятся в файле пользовательских настроек и все настройки слоев над ним пустые.
  2. Создайте пустой файл для дополнительных настроек и поместите его над основным файлом настроек.
  3. Теперь оба файла настроек должны находиться под слоем совместной работы, один над другим, в Setting Layers dialog box.
  4. Откройте решение и убедитесь, что применяются настройки из файла основных настроек.
  5. Внесите необходимые изменения в настройки и сохраните их в файле дополнительных настроек, используя Сохранить на.

Чтобы лучше понять, как работают настройки слоев, посмотрите this post.

+0

Хорошо, в конце я поеду по двум файлам. Хотя я не чувствую, что это идеальное решение, оно решит мои потребности. То, что вы описали, это в основном то, что я собирался делать, если не было ответа (я сказал это в вопросе на самом деле). Я думаю, что ваш ответ не является ответом на вопрос. Я знаю, как переопределить настройки из другого файла настроек, но это не то требование, которое у меня есть. – julealgon