2010-07-11 10 views
5

Tengo una aplicación web bajo control de código fuente en git. Tengo diferentes archivos CSS para diferentes clientes, así como imágenes y otras cosas específicas del tema. Y también informes personalizados ... Además del tema, todos los demás aspectos de la aplicación son los mismos. ¿Cuál sería una forma recomendada de mantener la aplicación, así como la información del tema bajo control de código fuente en git. ¿Debo usar ramas para el tema y los informes o submódulos ... Durante el desarrollo me gustaría que mi tema de los clientes a mi rama dev y hacer los cambios que se comprometen a mi cliente tema ...Flujo de trabajo de Git para archivos CSS personalizados y temas

¿Hay algo como lo posible con GIT?

Respuesta

3

Las sucursales son una forma de hacerlo, pero dado que Git es un DVCS, necesita tratar también con el aspecto de publicación (que es orthogonal to branching): ¿qué hacer con otro repositorio y dónde ?.
Significado si se inicia mediante la gestión de las ramas para cada cliente, que realmente necesita para recordar:

  1. para actualizar a las sucursales con el código común (git rebase --interactive) para reproducir compromete específicos del cliente en la parte superior de desarrollo común cometa (que están en la instancia 'dev' branch foir).
  2. para empujar la rama derecha al repositorio remoto derecho para publicar los cambios correctos.

Para este tipo de estructura de desarrollo (un módulo común, varios módulos específicos del cliente), consideraría un enfoque de componentes y utilizar git submodules.

  • una cesión temporal independiente para todo el código común
  • una cesión temporal por cliente para al CSS, archivos de informe y el tema
  • una cesión temporal de los padres por cliente que agregar las versiones correctas de los submódulos de derechos con el fin para construir y publicar la aplicación web del cliente.
+0

Gracias por su respuesta, lo intentaré. ¿Existe la posibilidad de extraer un submódulo de los archivos existentes en el repositorio de módulos común? –

+0

@server: Creo que sí. Consulte http://stackoverflow.com/questions/3076629/creating-a-submodule-in-a-git-project/3076862#3076862 para comenzar. – VonC

Cuestiones relacionadas