2009-10-20 15 views
5

Mi estructura de directorios tiene el siguiente aspecto:¿Cómo puedo configurar recursivamente el estado de svn para ocultar los archivos ignorados?

project/ 
    app1/ 
    app2/ 
    settings.py 

desde dentro del directorio project, me encontré con svn propedit svn:ignore . Esto sólo ignoran los archivos desde dentro director del proyecto, con exclusión de sus subdirectorios. Puedo ejecutar svn ignore nuevamente desde dentro de cada una de las carpetas y funcionará. ¿Hay un comando u opción de svn interno que pueda hacerlo recursivamente por mí o debería recurrir a un script para realizar el ignorado dentro de cada subcarpeta de mi proyecto?

He puesto mis ficheros ignorados ser:

*.pyc 
*.swp 

Sin embargo, cada vez que hago un svn status, sigo sin ver los archivos anteriores. ¿Hay alguna manera de decir svn status para ocultar los archivos ignorados recursivamente?

+1

'Estado' SVN se esconde ficheros ignorados. ¿Cómo establecieron esos archivos para ser ignorados? –

+1

¿Has marcado el cambio para ignorarlo? No estoy seguro de que funcione hasta que lo hagas. – pivotal

+0

He editado mi pregunta para obtener más aclaraciones. –

Respuesta

5

svn propedit solo funciona en un objetivo a la vez. TortoiseSVN tiene una opción para aplicar propiedades recursivamente, pero si no lo está usando u otra GUI que tiene esa opción, tendría que hacerlo con una secuencia de comandos.

Sin embargo, lo que debe realmente hacer es configurar su global-ignores para ignorar los dos patrones de archivo que ha mencionado. De acuerdo con the most recent documentation, *.pyc y *.swp se incluyen en el valor predeterminado omite para Subversion 1.6, pero puede agregarlos si su archivo config no los tiene.

La ubicación de su archivo config depende de la plataforma; vea el enlace de documentación anterior. global-ignores se encuentra en la sección miscellany.

+0

El enlace de documentación está muerto. Creo que esta es la versión actual y la ubicación de interés. http://svnbook.red-bean.com/en/1.7/svn-book.html#svn.advanced.props.special.ignore Sección relevante - "En sistemas tipo Unix, esta área aparece como un directorio llamado .subversion en el directorio de inicio del usuario. En sistemas Win32, Subversion crea una carpeta llamada Subversion, normalmente dentro del área de datos de la aplicación del directorio de perfil del usuario (que, dicho sea de paso, suele ser un directorio oculto) " – RyanfaeScotland

+0

En Windows escriba% APPDATA% en la barra de direcciones del explorador para llevarlo allí. – RyanfaeScotland

2

El único problema con el mundo-ignora es que necesita una extensión de archivo. En algunos programas, hay archivos sin una extensión (o solo hay muchas extensiones). Un ejemplo son los archivos tmp en CakePHP.

i fijo esto (en la cáscara del golpe Linux):

cd app/tmp 
for a in `find . -type d |grep -v svn`; do svn propset svn:ignore '*' $a; done 
Cuestiones relacionadas