Estoy tratando de reunir formas efectivas para que otros hayan resuelto el siguiente problema. En el trabajo, nos hemos visto obligados a lanzar un parche de software (que se instalará en los sistemas de usuario final) que solo queremos que sea visible para un cliente específico. El código personalizado está en su propia rama de control de fuente. El problema es que tenemos dos líneas de código paralelas (y scripts de compilación) para mantener sincronizadas, y cada vez que revisamos el código original tenemos que revisar y probar el código específico del cliente.
Tengo curiosidad, ¿cómo manejan otras organizaciones este escenario? Estamos abiertos a soluciones comerciales y no solo técnicas (relacionadas con el control de origen). Por ejemplo, hemos hablado acerca de decirle al cliente que no pueden recibir actualizaciones en esa sucursal.
Nuestra estrategia de ramificación es así (basada en la Guía de ramificación de Visual Studio TFS , aunque estamos usando Subversion para ello)
svn
lo que significa que no saturan su flujo de trabajo normal. Si parece que las colas de parche podrían ser útiles, puede probarlas usando git-svn o hgsubversion . El uso de una interfaz DVCS para suavizar un flujo de trabajo complicado svn
podría incluso alentar a las personas a considerar la posibilidad de cambiar a un DVCS al por mayor, para obtener todos los demás beneficios.
hg
ogit
podría sugerirle que mire el uso de Patch Queues ( Mercurial Queues Extension o Stacked Git ) pero no sé si TFS tiene algo similar.