Существует известная проблема с репозиториями SVN и сервисом индексации окон, бьющимся за .svn файлы метаданных. Здесь для получения дополнительной информации.
Как мы можем настроить его, таким образом, нет автоматически никаких проблем, индексирующих репозитории подверсии окнами (Vista/Win7). (Мы не хотим должными быть вручную делать что-то каждый раз, когда мы добавляем repo каталог.)
Одна идея состоит в том, чтобы установить Windows к автоматически не, индексируют папки, названные ".svn", однако я не могу найти способ сделать это.
Я знаю, что можно отключить определенные расширения, но это, кажется, не работает, так как svn файлы метаданных находятся в папке.
Примечание:
AFAIK, сервис Windows Indexing на Windows 7 только смотрит в папке Users как значение по умолчанию (исправьте меня, если я неправ). Если у Вас есть свои репозитории SVN в Вашей личной папке, Вы можете:
a) Помещение Ваших репозиториев SVN в другом месте
b) Исключением тех папок от индекса. Здесь Вы найдете, как исключить папку.
Групповая политика WDS имеет опцию для Prevent Indexing Certain Paths
, но это не перечислено доступное для Windows Vista согласно диаграмме функции.
Поддерживаемый на: Windows XP, Windows Server 2003 с Windows Search 3.01 или любая версия Microsoft Windows с Windows Search 4.0 или позже.
Очевидная фиксация должна была бы изменить Подверсию для установки, это "не индексирует" флаг каждый раз, когда это создает .svn каталог. Проблема состоит в том, что эта функция больше не будет необходима, когда она будет представлена.
Известная проблема, скорее всего, уйдет в версиях Подверсии, это в настоящее время разрабатывается (версия 1.7). Будет намного меньше операций файла в .svn каталоге и также всего 1 .svn каталоге на рабочую копию.
Это делает его менее вероятно, что проблема произойдет и также делает намного легче отключить индексацию, потому что существует только единственная .svn папка.
Если ответ Darren Halls является подходом "Грубой силы", то мой ответ должен быть "Грубой силой и Незнанием" подход.:)
Это - что-то, что недавно раздражало меня, поскольку мы используем SVN для управления документооборотом и управления проектами, которое может означать, что индексатор Windows очень полезен когда дело доходит до способности искать неясные документы, но это, ловя все svn файлы устройства хранения данных просто бесполезно.
Это - мое (довольно ужасное) решение в пакетном файле окон:
ATTRIB /S /D -H ".svn"
ATTRIB /S /D +I ".svn"
ATTRIB /S /D +I "all-wcprops"
ATTRIB /S /D +I "entries"
ATTRIB /S /D +I "tmp"
ATTRIB /S /D +I "props"
ATTRIB /S /D +I "text-base"
ATTRIB /S /D +I "prop-base"
ATTRIB /S /D +I "*.svn-base"
ATTRIB /S /D +H ".svn"
Первые и последние строки там, потому что ATTRIB отказывается применять переключатель +I к скрытой папке, по крайней мере, это сделало для меня. Необходимо будет скопировать это в файл как "svnNoIndex.bat" и выполнить его в каталоге контроля SVN с большим репозиторием, он мог занять время...
Я в настоящее время тестирую это в соответствии с Vista с последним пакетом обновления, я ожидал бы, что это будет работать над Windows 7. Я не знаю, должен ли индекс быть восстановлен для принятия во внимание файлы, которые теперь отмечены как не индексированный путем выполнения этого, но я должен восстановить мой так или иначе, таким образом, это - то, что я делаю, поскольку это - только несколько дней, в то время как индекс восстанавливает.
Для создания этого "автоматическим", Вы могли добавить пакетный файл как рычаг постобновления, за которым бегут, обновление... допустило, что это грязно, но это могло бы работать.
Я имел ту же проблему и нашел решение. Весь мой код хранится под единственной папкой:
F:\projects\
Под той папкой деревья кода и связали файлы проекта те общие более чем 2 ГБ. Я постоянно должен искать это дерево, и окна Indexing на самом деле был чрезвычайно полезный инструмент для того, чтобы сделать быстрые поиски, таким образом, выключить его не было опцией. Я хочу исключить папки SVN, потому что они загромождают мои результаты поиска, (2) ненужное перетаскивание на моей системе, (3) SVN, Win7 и Основы безопасности MS, кажется, не работают приятно при выполнении больших операций SVN.
Прежде чем Вы попробуете решение, воспроизведете проблему:
Решение:
csmcmd.exe /add_rule file:///F:\projects\*\.svn\* /USER /EXCLUDE
Я понял это первым выполнением команды: csmcmd.exe /enumerate_rules
, перечислять все существующие. Уже были некоторые правила с Астериксом (*) то, что подстановочный знак был используемым Windows, таким образом, это было доказательство, это было возможно.
Теперь повторите шаги для репродуцирования проблемы, и Вы больше не должны видеть помеху SVN в своих результатах поиска. Дайте компьютер когда-то для обновления индексов - это заняло меньше чем 5 минут в моей системе. Иногда перезапуск Поискового сервиса, начинание восстанавливания/повторно индексирования или перезагрузки способствуют вещам перемещения.
Обновление: Некоторые мои проекты SVN используют ".svn" и некоторое использование "_svn", таким образом, я добавил эти два правила к каждому диску:
csmcmd.exe /add_rule file:///F:\*\.svn\* /DEFAULT /EXCLUDE
csmcmd.exe /add_rule file:///F:\*\_svn\* /DEFAULT /EXCLUDE