¡Hola! Hace no mucho tiempo que montamos en este foro un grupo para desarrollar videojuegos, y una de nuestras preocupaciones era saber que Sistema de control de versiones (SCM en adelante) utilizar. Al final lucesita (otro usuario del foro) y yo empezamos a probar algo sobre Darcs, pero llegamos a la conclusión de que teníamos que estar haciendo algo mal porque no conseguíamos utilizarlo como un SCM descentralizado. Me explico.
En Darcs creamos un repositorio original y distribuimos a cada uno de los participantes en el proyecto una copia. Luego cada uno empieza a desarrollar los parches que quiere y a enviarlos a los demás. Pero, ¿cual es nuestro problema? Pues que los demás no pueden aplicar esos parches debido a que los parches sólo se pueden aplicar sobre el repositorio original y no sobre copias. Lo cual nos lleva a deducir que los participantes tendrían que conseguir cada dos por tres el repositorio original actualizado con los parches para poder trabajar sobre él.
Para poder llevara cabo ésto se nos ocurrió colgar el repositorio orginal en línea, que cada uno trabaje sobre su copia y al acabar que actualice el repositorio y lo vuelva a subir. Pero esto nos genera una duda: ¿no estamos haciendo de Darcs un Sistema de Control de Versiones centralizado? En teoría Darcs es descentralizado, pero si tenemos que andar cogiendo cada dos por tres el repositorio original y haciéndole una copia de trabajo lo convertimos en centralizado.
¿Hay algún sabio por aquí que nos pueda decir qué es lo que estamos pasando por alto? ¿O lo estamos haciendo todo bien y, simplemente, Darcs no es tan descentralizado como dicen? Por favor, contestad cuanto antes porque queremos dar inicio al proyecto ya. Nada más.
Muchas gracias por vuestra atención y un saludo.