El proyecto de código abierto Git acaba de lanzar Git 2.49. Aquí te mostramos lo más interesante de las nuevas características y cambios introducidos desde la última actualización.
1. Nuevo algoritmo de hash para nombres de archivos
Esta versión introduce un nuevo algoritmo de hash que considera más profundamente la estructura de directorios al calcular los hashes.
Esto mejora la agrupación de objetos en los archivos de paquete, resultando en una compresión más eficiente y en tiempos de empaquetado más rápidos.
Por ejemplo, al aplicar este nuevo algoritmo al repositorio microsoft/fluentui el tiempo de reempaquetado se redujo de aproximadamente 96 segundos a 34 segundos y el tamaño del paquete pasó de 439 MiB a 160 MiB.
2. Herramienta git backfill y nueva API de recorrido por ruta ️
Se ha añadido la herramienta git backfill para descargar de manera eficiente los blobs históricos faltantes en clones parciales.
Esta herramienta utiliza una nueva API de recorrido por ruta que agrupa objetos por sus rutas, mejorando la compresión de deltas y reduciendo el número de solicitudes al servidor.
3. Compatibilidad con clones superficiales de un solo commit
El comando git clone ahora permite crear clones superficiales que contienen solo un commit específico, sin necesidad de que este esté en la punta de una rama.
Esta funcionalidad es útil para obtener una instantánea puntual del repositorio sin descargar su historial completo.
4. Preparación para la integración de zlib-ng ⚙️
Git 2.49 sienta las bases para la integración de zlib-ng, una biblioteca de compresión más rápida y eficiente. Esta preparación anticipa mejoras en el rendimiento de las operaciones de compresión en futuras versiones de Git.
5. Incorporación de código en Rust
Se ha introducido código en Rust en la base de código de Git, añadiendo dos nuevas bibliotecas: libgit-sys y libgt.
Esta incorporación busca mejorar la eficiencia y la seguridad del código, aprovechando las ventajas que ofrece Rust.
Estas actualizaciones refuerzan el compromiso de Git con la mejora continua, ofreciendo a los desarrolladores herramientas más potentes y eficientes para gestionar sus proyectos de manera efectiva.