Microsoft ha trasladado la mayor parte del código de Windows desde Source Depot a Git, “software creado por Linus Torvalds pensando en la eficiencia y la confiabilidad del mantenimiento de versiones de aplicaciones cuando éstas tienen un gran número de archivos de código fuente”, según la descripción de Wikipedia, que agrega: “al principio, Git se pensó como un motor de bajo nivel sobre el cual otros pudieran escribir la interfaz de usuario o front end como Cogito o StGIT. Sin embargo, Git se ha convertido desde entonces en un sistema de control de versiones con funcionalidad plena”.
El proyecto Windows es formidable en cuanto al volumen de su código fuente. Según Microsoft, el código fuente de Windows constituye “el mayor repositorio Git del planeta”. Tal es su volumen, que la empresa debió crear un sistema de archivos específico, denominado Git Virtual File System (GVFS), para darle la escalabilidad necesaria.
30 minutos para ejecutar un comando
Sin GVFS, la mayor parte de los comandos digitados en el repositorio Git para Windows demorarían 30 minutos o más en ser ejecutados, una espera demasiado prolongada. Con GVFS, el tiempo de ejecución se reduce a 20 segundos, explica Microsoft en un artículo firmado por Brian Harry, uno de sus ingenieros a cargo del proyecto.
El código fuente de Windows consiste de 3,5 millones de archivos que ocupan 300 GB en el repositorio. A escala global, Microsoft cuenta con aproximadamente 4 000 desarrolladores que trabajan con el código fuente. Cada día se crean 1 760 builds, que se suman a miles de «pull request validation builds».
Microsoft comenta que la mayor parte de los desarrolladores han migrado a Git en los últimos tres meses, pero que el traslado más sustancial ocurrió en marzo, cuando 2 200 desarrolladores que trabajaban en Source Depot al concluir su jornada laboral un día viernes, se encontraron con un escritorio Git el lunes siguiente.
Brian Harry recalca que la transición se ha realizado sin mayores dificultades, a pesar de algunos contratiempos de menor importancia. La mayor parte de los retos fue solucionada en un par de días, comenta Harry.