¿Es posible crear una copy de solo aquellos files que no fueron asignados a SVN?

A veces necesito revertir muchos files, cerca de 20 a 50, pero necesito save los files con cambios locales, si en el futuro usaré algo.
El proyecto es grande: más de 10 000 files.
¿Es posible crear una copy de solo los files que no fueron confirmados?
Encontrar manualmente cambios y copyr lleva cerca de 2 horas: el tree del proyecto tiene muchas carpetas anidadas.

Puede crear un diff con svn diff y luego volver a aplicar el svn patch diff con svn patch .

Sin embargo, esta no es la forma en que debes trabajar con SVN. Es mejor si puede crear una bifurcación con sus cambios, luego puede fusionar esa sucursal y compartir el contenido con sus compañeros.

Tenga en count que crear una twig es relativamente fácil en SVN. En el server, los files están vinculados al original hasta que realmente cambian. Solo los files modificados tomarán espacio en el server.

Nota:
svn diff solo guarda las líneas modificadas de sus files, no los files completos. Pero eso es suficiente si necesita volver a aplicar el parche.

Si realmente quiere copys de files (en lugar de usar svn diff o hacer una twig), el enfoque (una versión de la cual usamos para copys de security de files de configuration del server) es verificar qué files se modifican. Las siguientes notas suponen que se encuentra en el nivel superior de su repository.

Por ejemplo, si ejecuta el svn status , puede get resultados como este:

 ? plans/software/intro_jan12.log ? plans/software/intro_jan12.dvi ? plans/software/data.txt ? plans/software/intro_jan12.nav M plans/software/intro_jan12.pdf M plans/software/jan12.tex ? plans/software/jan12/flowRoot9298.png ? plans/software/jan12/viewE_comments.pdf ? plans/software/jan12/team.ps ? plans/software/jan12/team.png ? plans/it/plan.log 

(Los? Archivos desconocidos que se muestran, la M muestra files modificados).

A continuación, puede extraer fácilmente los files modificados y hacer cosas con ellos haciendo algo así como svn status | egrep '^M' svn status | egrep '^M' .

Convertirlo en un pequeño script de shell que copy files modificados en otro lugar es bastante fácil:

 # step 1 svn status | egrep '^M' | awk '{ print $2 }' > recipe_file # step 2 rsync -a --files-from=recipe_file <repo> <dest> 

Naturalmente, <dest> puede estar en una máquina remota.

Presumiblemente, una vez que haya auditado los files de copy, puede hacer svn revert -R .