Estoy buscando poner una base de código que ejecute varios sitios web en control de versiones. Hay varias instancias de esta base de código que ejecuta sitios web en diferentes servidores virtuales.¿Utiliza el control de versión con código no jerárquico?
El problema que estoy enfrentando es que cada una de estas instancias separadas de más o menos el mismo código tiene subdirectorios con funciones específicas del sitio. Pero parece que los sistemas de control de versiones quieren controlar toda la jerarquía de directorios.
Por ejemplo, cada instancia tiene el directorio
/www/smarty/libs/plugins/
Donde encontrará funciones específicas del lugar de Smarty. Cuando estemos listos para ponerlo en control de versiones, la carpeta /www
sería la raíz.
Una opción es tener todas las funciones específicas del sitio en todos los sitios. No veo un problema en sí mismo, pero de alguna manera parece arquitectónicamente "incorrecto". Habría un montón de archivos que solo pertenecen a una implementación.
Otra opción es tener un repositorio separado para cada archivo específico del sitio dentro de la base de código. Pero parece que podría convertirse rápidamente en una pesadilla cuando se intentan implementar nuevos sitios correctamente.
¿Cuál es la mejor manera de hacerlo? El sistema de control de versiones que estamos viendo es subversión.
La construcción podría ser tan simple como un script de shell para cada aplicación que haga 'cp -r common-files/www; cp -r app1-plugins/www/smarty/libs/plugins'. –