Existe un problema conocido con los repositorios SVN y el servicio de indexación de Windows que lucha por archivos de metadatos .svn. Aquí para más detalles.
¿Cómo podemos configurarlo para que automáticamente no haya problemas al tener repositorios de subversión indexados por Windows (Vista / Win7)? (No queremos tener que hacer algo manualmente cada vez que agreguemos el directorio repo).
Una idea es configurar Windows para que no indexe automáticamente las carpetas llamadas ".svn", sin embargo, no puedo encontrar una manera de hacerlo.
Sé que puede deshabilitar ciertas extensiones, pero eso no parece funcionar ya que los archivos de metadatos svn están en una carpeta.
Nota la
windows-7
svn
windows-search
tortoise-svn
James Van Boxtel
fuente
fuente
Respuestas:
Estaba teniendo el mismo problema y encontré una solución. Todo mi código se almacena en una sola carpeta:
F: \ proyectos \
Debajo de esa carpeta hay árboles de código y archivos de proyecto relacionados que suman más de 2 GB. Necesito constantemente buscar en este árbol y la indexación de Windows ha sido una herramienta extremadamente útil para realizar búsquedas rápidas, por lo que desactivarla no era una opción. Quiero excluir las carpetas SVN porque saturan mis resultados de búsqueda, (2) arrastre innecesario en mi sistema, (3) SVN, Win7 y MS Security Essentials parecen no funcionar bien cuando se realizan grandes operaciones SVN.
Antes de probar la solución, reproduzca el problema:
Solución:
csmcmd.exe /add_rule file:///F:\projects\*\.svn\* /USER /EXCLUDE
Descubrí esto ejecutando primero el comando:,
csmcmd.exe /enumerate_rules
para enumerar todos los existentes. Ya había algunas reglas con el uso de comodines asterix (*) por parte de Windows, por lo que era una prueba de que esto era posible.Ahora repita los pasos para reproducir el problema, y ya no debería ver el desorden SVN en los resultados de búsqueda. Déle a la computadora algún tiempo para actualizar los índices; esto tardó menos de 5 minutos en mi sistema. A veces, reiniciar el servicio de búsqueda, iniciar una reconstrucción / reindexar o un reinicio ayuda a avanzar.
Actualización : Algunos de mis proyectos SVN usan ".svn", y algunos usan "_svn", por lo que he agregado estas dos reglas a cada unidad:
csmcmd.exe /add_rule file:///F:\*\.svn\* /DEFAULT /EXCLUDE
csmcmd.exe /add_rule file:///F:\*\_svn\* /DEFAULT /EXCLUDE
fuente
AFAIK, el servicio de indexación de Windows en Windows 7 solo se ve dentro de la carpeta Usuarios por defecto (corrígeme si me equivoco). Si tiene sus repositorios SVN dentro de su carpeta personal, puede:
a) Poner sus repositorios SVN en otro lugar
b) Al excluir esas carpetas del índice. Aquí encontrará cómo excluir una carpeta.
fuente
La solución obvia sería cambiar Subversion para establecer este indicador de "no indexar" siempre que cree un directorio .svn. El problema es que esta característica ya no será necesaria cuando se introduzca.
El problema conocido probablemente desaparecerá en las versiones de Subversion que se están desarrollando actualmente (versión 1.7). Habrá muchas menos operaciones de archivo dentro del directorio .svn, y también solo 1 directorio .svn por copia de trabajo.
Esto hace que sea menos probable que ocurra el problema, y también hace que sea mucho más fácil deshabilitar la indexación, porque solo hay una carpeta .svn.
fuente
Método de fuerza bruta
La Política de grupo de WDS tiene una opción para
Prevent Indexing Certain Paths
, pero no está disponible para Windows Vista de acuerdo con el cuadro de características.fuente
Si la respuesta de Darren Halls es el enfoque de "Fuerza Bruta", entonces mi respuesta tiene que ser el enfoque de "Fuerza Bruta e Ignorancia". :)
Esto es algo que me ha molestado recientemente, ya que usamos SVN para la gestión de documentos y proyectos, lo que puede significar que el indexador de Windows es muy útil cuando se trata de poder buscar documentos oscuros, pero capturar todos los archivos de almacenamiento svn es simplemente inútil.
Esta es mi solución (bastante fea) en un archivo por lotes de Windows:
La primera y la última línea están allí porque ATTRIB se niega a aplicar el cambio + I a una carpeta oculta, al menos lo hizo por mí. Tendrá que copiar esto en un archivo como "svnNoIndex.bat" y ejecutarlo en su directorio de pago SVN, con un repositorio grande que podría tomar algún tiempo ...
Actualmente estoy probando esto en Vista con el último Service Pack, espero que funcione en Windows 7. No sé si el índice necesita ser reconstruido para tener en cuenta los archivos que ahora están marcados como no indexados por haciendo esto, pero necesito reconstruir el mío de todos modos, así que eso es lo que estoy haciendo, ya que solo son unos días mientras se reconstruye el índice.
Para hacer esto "automático", puede agregar el archivo por lotes como un enlace posterior a la actualización que se ejecuta después de una actualización ... dado que es desordenado, pero podría funcionar.
fuente
Básicamente, puede indicarle a Windows Search que ignore las carpetas .svn ajustando el registro.
La URL coincide con las carpetas llamadas ".svn" en cualquier parte de su sistema de archivos. (El número después de las reglas predeterminadas debe ser único, es decir, si ya tiene una regla predeterminada 11, elija otro número).
fuente