usar Subversion (SVN) para un control de los archivos
Cuando se empieza a usar Subversion (SVN), para tener un control de los archivos de nuestro proyectos, en ocasiones usaremos clases, librerías, frameworks o carpetas de un repositorio de un tercero. Cuando unimos estas carpetas nuevas, a nuestro repositorio cliente, esta no los interpreta bien porque ya vienen con otras carpetas .SVN con archivos específicos para su repositorio de origen. La solución aquí es eliminar todas las carpetas .SVN de lo que queramos implementar para que nuestro repositorio cliente lo interprete como nuevos archivos y podamos agregarlas al proyecto.
Por consola nos ubicaremos en la carpeta donde están nuestros nuevos archivos/carpetas y ejecutaremos alguno de los siguientes scripts dependiendo del S.O. :
Código :
# Windows FOR /r "." %f IN (.svn) DO @RD /s /q "%f" # Linux / OSX rm -rf `find . -type d -name .svn`
Con esto se eliminarán las carpetas .SVN de forma recursiva. Pero escribir toda esa línea no es muy cómodo que digamos en nuestro trabajo del día a día, por eso vamos a automatizar este proceso.
En Windows
Crearemos un archivo que llamaremos «borrar carpetas SVN.reg» y contendrá lo siguiente:
Código :
Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\Directory\shell\DeleteSVNFolders] @="Borrar carpetas SVN" [HKEY_CLASSES_ROOT\Directory\shell\DeleteSVNFolders\command] @="cmd.exe /c \"TITLE Removing SVN Folders in %1 && FOR /r \"%1\" %%f IN (.svn) DO @RD /s /q \"%%f\" \""
Le damos doble click a este archivo y nos preguntará si queremos agregarlo al Registro, le decimos que Sí.
Ahora tendrémos una opción más en nuestro menú contextual al dar click derecho sobre cualquier carpeta que ejecutará nuestro script.

En Linux / Mac OS X
Extraido desde: Any Example
Crearemos un archivo en /usr/bin/ (o en cualquier otra carpeta de binarios que sea accesible), lo llamaremos «csvn» y contendrá lo siguiente:
Código :
#!/bin/sh echo "recursively removing .svn folders from" pwd rm -rf `find . -type d -name .svn`
Ahora podremos usarlo de la forma que comentamos anteriormente pero en vez de escribir toda la línea de código escribiremos sólo «csvn» (Recuerde estar sobre la ruta en la que quiere eliminar las carpetas .SVN).
Nota: No es recomendable ejecutar ‘csvn’ como root.
