2012-07-25 7 views
36

tengo un proyecto de SVN con el árbol de la siguiente manera:SVN profundidad de la obtención

/project 
    /dir1 
     /subdir1 
      -file1 
      -file2 
      ..... 
     -file1 
     -file2 
     ..... 
    /dir2 
     -file1 
     -file2 
     ..... 
    /dir3 
     /subdir1 
      -file1 
      -file2 
      ..... 
     /subdir2 
      -file1 
      -file2 
      ..... 
     /subdir3 
      -file1 
      -file2 
      ..... 
     /subdir4 
      -file1 
      -file2 
      ..... 
    /dir4 
     -file1 
     -file2 
     ..... 
-file1 
-file2 

necesito a la comprobación

  • todos los archivos de proyecto/
  • completa/dir1
  • completa/directorio2
  • lleno/dir4
  • Desde/dir3 Necesito solamente/subdir1 y/subdir3

¿Puedo verificar estos archivos/carpetas utilizando svn commandline con algún tipo de profundidad? Si es así, ¿cómo puedo hacerlo? ¿Puedo agregar subdir2 a dir3 después de finalizar la compra? ¿Cómo puedo actualizar la copia de trabajo creada de esta manera? ¿El comando normal "svn up" actualizará solo estas carpetas o se realizará una actualización completa del proyecto?

Respuesta

54

Lo que necesita se llama sparse checkout.

En su caso, usted puede:

svn co --depth files file:///project project 
cd project 
svn up --set-depth infinity dir1 dir2 dir4 
svn up --set-depth empty dir3 
svn up --set-depth infinity dir3/subdir1 dir3/subdir3 

¿Puedo añadir a subdir2 dir3 después de una extracción?

Sí: svn up --set-depth infinity dir3/subdir2

copia ¿Cómo puedo actualizar de trabajo creado de esta manera? ¿El comando normal "svn up" actualizará solo estas carpetas o se realizará una actualización completa del proyecto ?

Sí, svn up solo se actualizarán estos archivos y carpetas, es decir, se mantendrá la profundidad de actualización.

+0

gracias lot.So si entiendo si se añadirá una nueva carpeta (por ejemplo dir5) para proyectar no lo hará estar actualizado. ¿Estoy en lo cierto? –

+0

Sí, la carpeta principal de dir5 tiene la profundidad establecida en 'archivos', por lo que se actualizarán los archivos nuevos, pero no las nuevas. – ks1322

+3

Si desea agregar automáticamente nuevos subdires de nivel superior, usar '--depth inmediates' en lugar de' --depth files' debería ser el truco. –

0

1) svn up ruta vacía de archivos/carpetas --set profundidad

// se eliminará el archivo de su sistema

2) svn hasta el infinito archivo --set profundidad/ruta de la carpeta

// será regenerado el archivo desde el servidor sVN en el sistema local

Cuestiones relacionadas