¿Cómo eliminar recursivamente las carpetas de metadatos .svn?

11

Tengo un proyecto Java y usé un repositorio SVN, ahora decido cambiar a GIT.

Sin embargo, el problema es que el motor SVN que utilicé creó en cada carpeta del proyecto el .svndirectorio de metadatos.

Quiero limpiar todas las carpetas del proyecto de esta carpeta oculta.

¿Hay algún comando de terminal para buscar en la carpeta y limpiarlo?

Ek Kosmos
fuente

Respuestas:

20

Tendrá que moverse a la carpeta deseada usando el cdcomando y luego escribir el siguiente comando:

find -type d -name '.svn' -exec rm -rfv {} \;

Esto eliminará todos los svnarchivos de los directorios actuales y secundarios.

Treviño
fuente
3

Otra forma de hacer lo mismo es:

rm -rf `buscar. -type d -name .svn`

Chakra
fuente
1
Desearía que Windows (tengo este mismo problema en esa plataforma) tuviera soluciones tan limpias y fáciles :(
Steven
Puede haber algún script en Powershell, pero ya no uso Windows ;-)
Chakra
Esto falla para directorios con espacios en el nombre
enzotib
2

Si todavía está conectado a svn, simplemente hazlo svn exporty copiará el proyecto sin metadatos de svn :)

Estera
fuente
1

Para ventanas :

  • use UnxUtils http://unxutils.sourceforge.net/ con las respuestas anteriores
  • o use la búsqueda (F3) en el explorador con ".svn" como nombre de archivo, también me funcionó
Michel Daviot
fuente
0

Me ha gustado una solución escribiendo:

find ./ -name ".svn" | xargs rm -Rf
Ek Kosmos
fuente
Esto es peligroso, cuando algunos dir puede contener espacios en su nombre
enzotib
Si. ¡Cuidado con los espacios!
nanofarad