El pasado mes de febrero el equipo de desarrollo de Windows hizo un anuncio sorprendente: Git sería la clave del desarrollo del sistema operativo de Microsoft. Este sistema de control de versiones Open Source se convertiría por tanto en piedra angular del sistema operativo propietario más utilizado en todo el planeta.
Esa migración está casi completa, y casi el 90% del código ya está utilizando este sistema de desarrollo colaborativo que se ha afinado para hacer frente a esos 300 GB de código que forman parte del desarrollo de Windows. El amor de Microsoft por el Open Source es ahora más patente que nunca.
Git a medida
En el pasado Microsoft hacía uso de SourceDepot, pero el tamaño del proyecto de Windows era tan grande que se dividía en 65 repositorios distintos que se unificaban solo a nivel lógico gracias a una especie de capa de virtualización. La estructura era compleja, y los desarrolladores buscaban alternativas.
La línea azul corresponde a SourceDepot, aún en uso, y la naranja a Git, que cada vez es más importante en el número total de “commits” (línea gris), las actualizaciones de código en todo tipo de componentes de Windows.
La dimensión del proyecto, con repositorios de 300 GB y 3,5 millones de ficheros, hizo que la propia Microsoft tuviera que crear una versión propia de Git. En ella cobra especial importancia el llamado Git Virtual File System (GVFS), que permite que el repositorio se pueda clonar sin replicar esos 300 GB cada vez. Solo se coge lo que se necesita del servidor Git, que va actualizándose y sincronizándose con la copia local de forma perfecta.
Aún así tuvieron que hacer cambios posteriores al funcionamiento de su sistema Git para que de nuevo escalase de forma adecuada con la forma de trabajar de sus desarrolladores. Un comando como git status, que muestra qué ficheros se han modificado y contienen cambios que deben ser confirmados y añadidos de forma definitiva, tardaba cerca de 30 minutos (algo insostenible) en las primeras pruebas, pero ahora han logrado reducir ese tiempo de forma increíble a tan solo 2,3 segundos.
Números mareantes
El repositorio de Windows cuenta ya con 4.400 ramas activas, cerca de 8.500 publicaciones de nuevos fragmentos de código al día y 6.600 revisiones de ese código diarias. El sistema ya es parte integral del trabajo de 3.500 desarrolladores de Windows.
No solo eso: el ritmo de creación de nuevas compilaciones es asombroso. Si os parecía que el anillo “Fast” de actualizaciones para Windows Insider era rápido, atentos: cada día se realizan de media 1.760 compilaciones de nuevas versiones de Windows sobre las que se trabaja para ir corrigiendo errores.
La gran mayoría de esas compilaciones son versiones “de vida corta”, que se crean para probar una característica específica que si funciona bien se acaba añadiendo a la rama principal para luego cerrar esa “subrama”.
No solo eso: el trabajo que Microsoft ha hecho para adaptar Git a sus necesidades es interesante para el propio Git, y en Redmond esperan que sus mejoras acaben formando parte del código base de este sistema de control de versiones Open Source que es ahora fundamental para el desarrollo de este sistema operativo.
Quién se lo hubiera imaginado hace tan solo 5 años.
Vía | Ars Technica
Más información | Microsoft
El pasado mes de febrero el equipo de desarrollo de Windows hizo un anuncio sorprendente: Git sería la clave del desarrollo del sistema operativo de Microsoft. Este sistema de control de versiones Open Source se convertiría por tanto en piedra angular del sistema operativo propietario más utilizado en todo el planeta.
Esa migración está casi completa, y casi el 90% del código ya está utilizando este sistema de desarrollo colaborativo que se ha afinado para hacer frente a esos 300 GB de código que forman parte del desarrollo de Windows. El amor de Microsoft por el Open Source es ahora más patente que nunca.
Git a medida
En el pasado Microsoft hacía uso de SourceDepot, pero el tamaño del proyecto de Windows era tan grande que se dividía en 65 repositorios distintos que se unificaban solo a nivel lógico gracias a una especie de capa de virtualización. La estructura era compleja, y los desarrolladores buscaban alternativas.
La dimensión del proyecto, con repositorios de 300 GB y 3,5 millones de ficheros, hizo que la propia Microsoft tuviera que crear una versión propia de Git. En ella cobra especial importancia el llamado Git Virtual File System (GVFS), que permite que el repositorio se pueda clonar sin replicar esos 300 GB cada vez. Solo se coge lo que se necesita del servidor Git, que va actualizándose y sincronizándose con la copia local de forma perfecta.
Aún así tuvieron que hacer cambios posteriores al funcionamiento de su sistema Git para que de nuevo escalase de forma adecuada con la forma de trabajar de sus desarrolladores. Un comando como git status, que muestra qué ficheros se han modificado y contienen cambios que deben ser confirmados y añadidos de forma definitiva, tardaba cerca de 30 minutos (algo insostenible) en las primeras pruebas, pero ahora han logrado reducir ese tiempo de forma increíble a tan solo 2,3 segundos.
Números mareantes
El repositorio de Windows cuenta ya con 4.400 ramas activas, cerca de 8.500 publicaciones de nuevos fragmentos de código al día y 6.600 revisiones de ese código diarias. El sistema ya es parte integral del trabajo de 3.500 desarrolladores de Windows.
No solo eso: el ritmo de creación de nuevas compilaciones es asombroso. Si os parecía que el anillo “Fast” de actualizaciones para Windows Insider era rápido, atentos: cada día se realizan de media 1.760 compilaciones de nuevas versiones de Windows sobre las que se trabaja para ir corrigiendo errores.
La gran mayoría de esas compilaciones son versiones “de vida corta”, que se crean para probar una característica específica que si funciona bien se acaba añadiendo a la rama principal para luego cerrar esa “subrama”.
No solo eso: el trabajo que Microsoft ha hecho para adaptar Git a sus necesidades es interesante para el propio Git, y en Redmond esperan que sus mejoras acaben formando parte del código base de este sistema de control de versiones Open Source que es ahora fundamental para el desarrollo de este sistema operativo.
Quién se lo hubiera imaginado hace tan solo 5 años.
Vía | Ars Technica
Más información | Microsoft
Compartir esto: