2010-03-02 2 views
1

У меня есть проект Visual Studio 2008, который содержит файлы, сгенерированные с помощью кода на этапе предварительной сборки. Ни один из этих файлов не должен быть включен в исходный контроль. Я не могу предсказать, сколько файлов будет, или их точное имя. Сформированные файлы включены в Визуальный файл проекта студии через подстановочные директиву:Visual Studio: Как исключить весь каталог из исходного элемента управления?

<ItemGroup> 
    <Content Include="CodeGen\*.xaml"/> 
    </ItemGroup> 

Visual Studio маркирует все сгенерированные файлы как «новое для управления версиями», так что, когда вы не будете осторожны, вы 'будет проверять всю связку. Исключая файлы из исходного управления через «File >> Source Control >> Исключить выбор из исходного элемента управления», единственное, что меняется, это файл csproj.vspscc; в нем есть одна строка в файле, и счетчик:

"NUMBER_OF_EXCLUDED_FILES" = "2" 
"EXCLUDED_FILE0" = "CodeGen\\File1.xaml" 
"EXCLUDED_FILE1" = "CodeGen\\File2.xaml" 

Что я ищу способ, чтобы исключить все кодовые генерируемые файлы из системы управления версиями, так что Visual Studio не распознает любой файл как «новый» или «измененный», независимо от содержимого папки.

Контроль источника - это Perforce.

ответ

4

Вы можете изменить свою спецификацию рабочей области в Perforce, чтобы автоматически игнорировать определенные файлы или каталоги. Если предположить, что название проекта является Foo и ваше рабочее пространство называется бар, вы можете иметь

//depot/Foo/... //Bar/... 
-//depot/Foo/CodeGen/... //Bar/CodeGen/... 

Где отрицательный знак означает, что строка определяет файлы/каталоги игнорировать, и тройной период означает, что все файлы и директории под этим дорожка.

Я предполагаю, что это приведет к игнорированию этих файлов, даже если Visual Studio попытается их добавить. Я не использовал интеграцию Perforce/Visual Studio, поэтому я не знаю точно.

+1

Прошло: Visual Studio по-прежнему распознает файлы как новые, но Perforce не позволит вам проверить его. Таким образом, это частичные решения; кроме того, все пользователи (> 20) должны будут изменять свои рабочие области во всех ветвях кода (> 10) ... намного лучше, чем раньше, спасибо – GreenIcicle

+0

@GreenIcicle: Возможно, вы можете настроить триггер на стороне сервера разделяет файлы с заданным элементом пути («CodeGen») из списка файлов. Это решит вашу проблему с таким количеством пользователей и рабочих областей, но я никогда раньше не работал с серверными материалами, поэтому я не знаю точно, как это будет работать. –

Смежные вопросы