Tengo una aplicación de gran tamaño (~ 50 módulos) utilizando una estructura similar a la siguiente:esquema de repositorio para grandes Maven proyecta
- Aplicación
- Módulos de comunicación
- color módulo de comunicación
- módulo de comunicación SSN
- etc. módulo de comunicación módulo
- Los módulos de servicio
- Router
- servicio votación módulo
- submódulo interfaz web para la votación
- Voto colector submódulo para la votación
- etc., para votar
- módulo de servicio del concurso
- etc. módulo de
- servicio votación módulo
- Módulos de comunicación
me gustaría importar la aplicación de Maven y la subversión. Después de algunas investigaciones descubrí que existen dos enfoques prácticos para esto.
Uno está utilizando una estructura de árbol igual que la anterior. El inconveniente de esta estructura es que necesita una tonelada de ajustes/modificaciones para que el informe de múltiples módulos funcione bien con Maven. Otro inconveniente es que en Subversion el enfoque estándar trunk/tags/branches agrega aún más complejidad al repositorio.
El otro enfoque utiliza una estructura plana, donde solo hay un proyecto principal y todos los módulos, submódulos y partes de los submódulos son un elemento directo del proyecto principal. Este enfoque funciona bien para informar y es más fácil en Subversion, sin embargo, creo que pierdo un poco la estructura de esta manera.
¿De qué manera elegirías a largo plazo y por qué?