Pregunta

Estamos realizando el cambio de SourceGear Vault a TortoiseSVN con VisualSVN para la integración de Visual Studio: nos encanta. Sin embargo, hay varias bibliotecas de clases a las que hacemos referencia en varias aplicaciones diferentes que no forman parte de la raíz de la copia de trabajo en ninguna de las aplicaciones. ¿Cuál es la mejor manera de lidiar con esto para que podamos continuar utilizando la integración de Visual Studio, pero aún así mantener varias bibliotecas de clase ubicadas fuera de la raíz de cada proyecto / aplicación? SourceGear no tiene ningún problema con esto.

Es posible agregar bibliotecas de clases por separado utilizando TortoiseSVN en el explorador, pero no hay capacidad para confirmar cambios en nada fuera de la copia de trabajo desde Visual Studio; tampoco hay el VisualSVN " semáforos " indicando el estado de estas bibliotecas fuera de la clase de copia de trabajo.

Por cierto, también vamos con el " un repositorio con muchos proyectos " Ruta en lugar de múltiples repositorios, especialmente porque así hemos trabajado durante años hasta este punto.

ACTUALIZACIÓN:

Releí algunas cosas que había visto antes y descubrí que svn: externals no solo hace referencia al uso de código en diferentes repositorios, sino que también se puede usar para usar varias copias de trabajo en VisualSVN.

Consulte http://www.visualsvn.com/support/topic/00007/ y http://svnbook.red-bean.com/ es / 1.2 / svn.advanced.externals.html

Sin embargo, ¿es esta la mejor manera de tratar este problema? Hay un buen hilo que pasa por todo, pero no se resuelve completamente cosas.

Por lo tanto, use svn: externals o no? ¿Usar múltiples repositorios o no? Nuevamente, durante años hemos referenciado el código en bibliotecas de clases compartidas entre múltiples soluciones / aplicaciones y esto nos funciona. Ahora, ¿cuál es la mejor manera de hacer que esto funcione con VisualSVN?

¿Fue útil?

Solución

Encontré las mejores respuestas here :

Proyectos referenciados

A veces es útil construir una copia de trabajo que está hecha de un número de diferentes desprendimientos. Por ejemplo, puede querer que diferentes subdirectorios provengan de diferentes ubicaciones en un repositorio, o tal vez de diferentes repositorios. Si desea que todos los usuarios tengan el mismo diseño, puede definir las propiedades svn: externals.

Y here :

Incluir un subproyecto común

A veces querrá incluir otro proyecto dentro de su copia de trabajo, tal vez algún código de biblioteca. No desea hacer un duplicado de este código en su repositorio porque perdería la conexión con el código original (y mantenido). O tal vez tienes varios proyectos que comparten el código del núcleo. Hay al menos 3 formas de lidiar con esto.

Otros consejos

Entiendo que han pasado más de diez años desde que hizo esta pregunta, pero me complace informarle que hubo un progreso en la implementación del soporte para múltiples copias de trabajo en el complemento VisualSVN. VisualSVN 7.1.0-alpha1 ahora está disponible para pruebas, y cuenta con soporte experimental para múltiples copias de trabajo dentro de una única solución .

Consulte la página de descargas de versiones preliminares . Tenga en cuenta que la nueva versión solo es compatible con Visual Studio 2019.

PS Consulte el artículo KB7: Uso de múltiples copias de trabajo en VisualSVN . También lo vamos a actualizar muy pronto.

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