9 votos

Linux y SVN: Cómo eliminar todos los archivos versionados sino mantener estructura de directorios, directorios de SVN de ignorar?

Quiero eliminar todos los archivos versionados desde mi repositorio, pero MANTENER el versionada de la estructura de directorios. Obviamente quiero dejar todos los .svn directorios virgen.

En otras palabras, quiero vaciar completamente una copia de trabajo de la estructura de directorios SIN dañar la estructura de directorio de la misma.

Por ejemplo, la eliminación de los archivos a partir de esta estructura:

dir/
    .svn/
        [files]
    svsubdir1/
        file1
        .svn/
            [files]
    subdir2/
        file2
        file3
        file4
        .svn/
            [files]
        subsubdir1/
            file5
            .svn/
                [files]

Debería resultar en:

dir/
    .svn/
        [files]
    svsubdir1/
        .svn/
            [files]
    subdir2/
        .svn/
            [files]
        subsubdir1/
            .svn/
                [files]

Estoy buscando algún tipo de find comando o algo para lograr esto, y estoy teniendo problemas para la construcción de la línea de comandos. Gracias por la ayuda!

10voto

DerfK Puntos 13616
find dir/ -path '*/.svn' -prune -o -type f -print

-path). Tuberías a menos y echa un vistazo. Lo que hace es encontrar primero (ruta termina en SVN y no efectuar recursividad en (ciruela pasa) en este directorio) o (si es un archivo, imprimir).

Si se ve buena, cambiar a

find dir/ -path '*/.svn' -prune -o -type f -exec rm {} +

La + versión pega todos los archivos juntos en un rm comando. Si eres paranoico, mantener una copia de seguridad del árbol ( cp -a dir/ otherdir/ ) primera.

1voto

mark Puntos 1755
encontrar. -no - ruta "* / SVN / *"- y - tipo f- y - exec/bin/rm '{}' \;

Debería hacer el truco.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: