Pregunta

Digamos que he copias de varias carpetas diferentes trabajando desde mi repositorio SVN dispersos a través de mi sistema de archivos. Sus directorios padre no son parte del repositorio. Por ejemplo.

somedir1\
   workingcopyOfA\
   workingcopyOfB\
somedir2\
   somedir3\
       workingcopyOfC\
   workingcopyOfD\

Ahora todos ellos contienen cambios que me gustaría hacer el ingreso a la vez (llamando svn sólo una vez por conveniencia, utilizando sólo un nuevo número de revisión por simplicidad).

¿Es esto posible? Es esto lo que se entiende por listas de cambios? ¿Qué puedo hacer yo si uso svn

(Hay algunas preguntas similares aquí en SO, pero se refieren a diferentes problemas.)

EDIT: Para aclarar: Las copias de trabajo todos pertenecen al mismo repositorio, pero a diferentes partes, es decir, el repositorio se ve así:

RepoDirA\
RepoDirB\
RepoDirC\
RepoDirD\
¿Fue útil?

Solución

Como se señaló otra, no es posible, ya que es por buenas razones (véase la respuesta de D Garcia en particular).

Si el eclipse es compatible con algo parecido, sospecho que crea múltiples confirmaciones detrás de la espalda.

Lo que es posible, sin embargo es a diff los cambios en un directorio de trabajo y aplicar esos cambios a otro directorio de trabajo (si se superponen). Una vez que hayas hecho esto, todos los cambios están en el directorio de trabajo único donde se puede comprobar a partir de. Los problemas para fusionar D Garcia señaló a son ahora su responsabilidad de resolver en tiempo de parche.

Si sus directorios de trabajo no se superponen, y la única razón por la que tiene varios directorios de trabajo se debe a que, por ejemplo, que no quiere tirar de todo el repositorio, yo sugiero revisar la jerarquía de la raíz común de sus directorios de trabajo, pero no de forma recursiva (usando svn co -N root) y luego obtener los directorios de trabajo específicos con svn update path/to/subsetOfInterest para los directorios intermedios). De esa manera, todos ellos viven dentro del mismo directorio de trabajo, y permiten trabajar sobre ellos de forma atómica.

Otros consejos

Sé que Eclipse puede hacer esto, pero tal vez que están utilizando algunos trucos en el interior (porque se puede cometer proyectos que utilizan diferentes repositorios, también, por ejemplo, uno que está en el CVS y el otro en SVN).

Sugiero a modo de prueba con su cliente. Si esto no funciona, que va a imprimir un error. No es posible romper nada.

No parece que pueda. Lo probé aquí, donde con frecuencia tienen múltiples copias de trabajo obtenida. La subversión se pone de mal humor sobre la existencia de ningún directorio .svn en la raíz común de las carpetas que usted está tratando de registrarse.

Por supuesto, si todas sus copias de trabajo se refieren a la misma ruta del repositorio - eso sería una cosa muy desagradable para permitir. Se podría básicamente estar esperando la subversión de fusionar 4 series de cambios a nivel local antes de ponerlos en el repositorio, lo que podría hacer que la resolución de conflictos divertido:)

Tenga en cuenta que esto era de subversión 1.4.5.

1.5 parece que las listas de cambios son más acerca de tener múltiples conjuntos de trabajo de los cambios en el mismo directorio de trabajo, y ser capaz de tratarlos por separado, en lugar de tener múltiples directorios de trabajo y tratarlos ing como una sola entidad.

Creo que no es posible, no por la línea de comandos y no con TortoiseSVN. Pero podría haber herramientas que hacen esto posible. Se puede escribir un guión de Bach-que también.

Las listas de cambios son algo más, aquí se puede agrupar algunos cambios en una workingcopy conjunto para que pueda comprometerse ellas por separado.

Creo que los conjuntos de listas de cambios se mantienen en un repositorio de base repositorio - por lo que en su ejemplo copias A B & C todos los cuales deberían estar en el mismo repositorio de trabajo. Entonces habría que añadir cada una de las copias de trabajo de forma individual a la misma lista de cambios.

No puedo probarlo (hasta su finalización) pero la configuración parece funcionar.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top