Git 2.53 lanzado con nuevas verificaciones de mantenimiento y rutas de diferencia más rápidas
Git 2.53 introduce el mantenimiento “is-needed”, amplía las herramientas de repositorios y envía mejoras de rendimiento en diff, packs y los internos de la base de datos de objetos.
Más de dos meses después del lanzamiento anterior 2.52, Git, un sistema de control de versiones distribuido y piedra angular del desarrollo de software, que ayuda a los desarrolladores a gestionar de manera eficiente los cambios en su código a lo largo de los proyectos, acaba de lanzar la versión 2.53.
Una de las adiciones más visibles es un nuevo subcomando git maintenance is-needed. Permite a los usuarios y a las herramientas determinar si las tareas de mantenimiento, como el reempaquetado o la optimización de referencias, son realmente necesarias, ayudando a evitar trabajos en segundo plano innecesarios en repositorios que ya están saludables.
Además, el comando experimental git replay ahora actualiza las referencias por sí mismo usando una única transacción de forma predeterminada, en lugar de emitir actualizaciones de referencias para que otro comando las aplique. La versión 2.53 también mejora los mensajes de error, la documentación y la cobertura de pruebas, particularmente en lo relacionado con el manejo de revisiones y los argumentos inválidos.
Varios comandos cotidianos también reciben mejoras incrementales. git blame ahora admite la selección de un algoritmo de diferencias, lo que brinda a los usuarios un mayor control sobre cómo se atribuyen los cambios a lo largo de las revisiones.
Tanto git apply como git diff introducen una nueva clase de error de espacios en blanco para líneas incompletas, haciendo que estos problemas sean más visibles y se manejen de manera consistente en todas las herramientas. Los comandos de inspección de repositorios también se han ampliado, con nuevas opciones para git repo info y una salida más detallada de git repo structure, incluyendo información adicional de la base de datos de objetos.
Bajo el capó, una cantidad considerable de trabajo se centra en el rendimiento y la estructura interna. Las operaciones de diferencia se benefician de optimizaciones como desactivar la detección de cambios de nombre y copias al ejecutar git diff --quiet, donde solo importa la presencia de cambios.
Además de eso, el uso de memoria se ha reducido en rutas costosas de detección de copias, y continúan los esfuerzos de refactorización alrededor de la base de datos de objetos, la gestión de archivos packfile y las API de streaming.
Finalmente, Git 2.53 avanza en el soporte de enlaces simbólicos en Windows, acompañado de la preparación del conjunto de pruebas y numerosas correcciones en la capa de compatibilidad de MinGW. En macOS, Git ahora soluciona problemas antiguos en la implementación de iconv suministrada por el sistema en lugar de reemplazarla por completo.
Como de costumbre, la versión se cierra con una larga lista de correcciones que abordan fallos, salidas desalineadas que involucran rutas no ASCII, casos límite de fusión, errores de configuración y errores en la documentación. Para obtener más detalles sobre todos los cambios en Git 2.53, consulte el anuncio de la versión.
