Los cambios en la subcarpeta externa de SVN no se muestran en el registro de vista (tortuga svn)

StackOverflow https://stackoverflow.com/questions/62716

  •  09-06-2019
  •  | 
  •  

Pregunta

Los externos SVN le permiten hacer que una carpeta SVN parezca como si estuviera en otra ubicación.Un buen uso para esto es tener una carpeta común compartida entre todos sus proyectos en SVN.

Tengo una carpeta /trunk/common en SVN que comparto a través de varios proyectos diferentes.

Ejemplo:

  • Proyecto 1 :/trunk/proyecto1/depende
  • Proyecto2:/trunk/proyecto2/depende
  • Proyecto3:/trunk/proyecto3/depende
  • Proyecto4:/trunk/proyecto4/depende

Cada una de estas carpetas dependientes está vacía, pero tiene un svn:external definido para apuntar a mi carpeta /trunk/common.

El problema es cuando veo el registro dentro de cualquiera de los proyectos:/trunk/projectX/ no muestra cambios desde svn:externals.Estoy usando tortuga SVN como mi cliente SVN.

¿Alguien sabe cómo cambiar este comportamiento?Me gustaría que el registro de presentación de /trunk/projectX también incluya cualquier cambio en cualquier svn:externals definido.

¿Fue útil?

Solución

Esto no es posible con la versión actual de Subversion, aparte de llamar explícitamente a svn log en el destino del directorio externo.

Puede intentar emitir una solicitud de función en el sitio web de Apache Subversion

Otros consejos

Cuando muestra el registro de una carpeta con versión local, mostrará los cambios relacionados con esta carpeta en particular.Los externos son sólo un enlace a una carpeta diferente en el repositorio.Lo único que puede rastrear sobre referencias externas, desde una carpeta que depende de este proyecto externo, es el definición de referencia en sí.Esto se debe a que la referencia es una propiedad de subversión de la carpeta dependiente.

Imagine que tiene la siguiente jerarquía de repositorios:

repo
   myfirstproject
      trunk
   mysecondproject
      trunk
   mycommonlib
      trunk

y eso mysecondproject\trunk La carpeta tiene lo siguiente. svn: externo propiedad :

svn://mysrv/repo/mysharedlib@2451 sharedlib

un pago de misegundoproyecto ronco dentro de una nueva carpeta segundo proyecto creará algo como esto en su sistema de archivos:

secondproject Folder (refers mysecondproject/trunk)
   sharedlib Folder (refers mycommonlib/trunk @ revision #2451)

Llamando al comando "Mostrar registro" de Tortoise desde segundo proyecto la carpeta solo se mostrará segundo proyecto cambios de archivos y, eventualmente, cambios que ocurrieron en el svn: externo propiedad de la carpeta.

Para obtener el registro de cambios del proyecto externo, debe llamar a "Mostrar registro" desde la carpeta interna biblioteca compartida, lo cual tiene sentido.

Según mi experiencia personal, el registro de los enlaces externos se informa solo si en la misma confirmación donde se cambian los archivos externos, modifica también solo un archivo en la carpeta "interna".De esta manera, SVN puede recuperar con el registro adecuado, también el registro de la carpeta externa.

Creo que al usar el enlace debería ser posible implementar un mecanismo para confirmar automáticamente un archivo puntual en el directorio de trabajo para cada confirmación, también si la confirmación comienza desde un enlace externo.

Adiós

Creo que después de Subversion 1.7 (que introdujo una única carpeta .svn en la raíz de WC) estaba más limpio:para directorios externos de tipo directorio de la copia de trabajo interna externa es a) independiente b) copia de trabajo anidada de un repositorio separado

>dir /B /S /AD
z:\subversion-troubleshoot-b\.svn
...
z:\subversion-troubleshoot-b\trunk
z:\subversion-troubleshoot-b\tags
z:\subversion-troubleshoot-b\trunk\lib
z:\subversion-troubleshoot-b\trunk\lib\.svn
...
z:\subversion-troubleshoot-b\tags\1.0.0
z:\subversion-troubleshoot-b\tags\1.0.1
z:\subversion-troubleshoot-b\tags\1.0.1\lib
z:\subversion-troubleshoot-b\tags\1.0.1\lib\.svn
...

y WC de padres no contiene ninguna información sobre WC anidado (directorio de WC, creado desde/del repositorio, tenga en cuenta la presencia del directorio .svn dos veces solo para la línea principal)

>svn ls -R
readme.textile
tags/
tags/1.0.0/
tags/1.0.0/core_mod.txt
tags/1.0.1/
tags/1.0.1/core_mod.txt
trunk/
trunk/core_mod.txt

cuando el tronco (y las etiquetas respectivamente) tienen el subdirectorio lib como externo

Repo-Browser with externals

Se agregó soporte para el manejo de elementos externos para actualizar y confirmar, porque este soporte produce independiente y no relacionado comandos consecutivos - y debido a que sin este soporte los externos no tienen sentido, el registro svn agregado tiene que ser de alguna manera conjunto (por principios desconocidos, por cierto)

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