2012-02-25 20 views
5

Quiero que un repositorio ignore por completo algunos archivos determinados, el equivalente de agregar esos archivos a .gitignore en un sistema git. Intenté:SVN no ignora los archivos

svn propset svn:ignore *.aux" . 

para ignorar todos los archivos .aux. Sin embargo, después de hacer eso y una exitosa svn commit, svn status todavía muestra:

?  something.aux 
!  somethingelse.aux 

hay una manera aún más fuerte para indicarle que debe pasar por alto estos archivos para que no aparecen en las listas de este tipo?

+5

Consulte esto: http://svnbook.red-bean.com/en/1.5/svn.advanced.props.special.ignore.html. –

+2

Supongo que tiene un error tipográfico en el comando "svn propset" que ha mencionado. No debería haber '' '' (signo de comillas). – bahrep

Respuesta

2

En realidad es una pregunta común y le recomiendo encarecidamente que considere el capítulo SVNBook "Ignoring Unversioned Items" que lo cubre.

Véase el fragmento importante de la SVNBook lo que explica el comportamiento: el apoyo

de Subversion para patrones de ficheros que pueden ignorarse extiende sólo al proceso de una sola vez de añadir archivos y directorios no versionados al control de versiones . Una vez que un objeto está bajo el control de Subversion, los mecanismos de ignorar patrones ya no se aplican a él. En otras palabras, no espere que Subversion evite confirmar los cambios que ha realizado en un archivo versionado simplemente porque el nombre de ese archivo coincide con un patrón ignorado: Subversion siempre nota todos sus objetos versionados.

Según la salida svn status, su copia de trabajo contiene one unversioned item (the one with the '?' sign) and one missing item (the one with the '!' sign).

?  something.aux 
!  somethingelse.aux 

Así que usted ha quitado manualmente (es decir, a través del Explorador de Windows, pero no a través de SVN cliente) la somethingelse.aux y ahora se ha 'perdido' de estado. El otro archivo something.aux aún no se ha versionado y está no ignorado.

Si no escribe mal el comando svn propset, cometido el cambio de propiedad y el archivo todavía no versionado ha estado puede resultar de utilidad este extracto:

los patrones que se encuentran en el svn: ignore aplicarse únicamente a el directorio en el que se establece esa propiedad, y no en ninguno de sus subdirectorios .

Además, puede marcar la propiedad svn:ignore emitiendo el comando svn propget.

Cuestiones relacionadas