La nueva versión de Git 2.30 ya fue dada a conocer y en esta nueva versión se presentan algunos cambios importantes tales como la capacidad de expandir comandos, asi como también la actualización de las plantillas para PHP, Rust y CSS, entre otras cosas más.
Para quienes desconocen de Git, deben saber que este es uno de los sistemas de control de versiones más populares, fiables y de alto rendimiento, que proporciona herramientas de desarrollo no lineales flexibles basadas en ramificaciones y fusiones.
Para garantizar la integridad del historial y la resistencia a los cambios «retroactivamente», se utiliza hash implícito de todo el historial anterior en cada confirmación, también es posible certificar con firmas digitales de los desarrolladores de etiquetas individuales y confirmaciones.
Principales novedades de Git 2.30
En comparación con la versión anterior, se adoptaron 495 cambios en la nueva versión, preparada con la participación de 83 desarrolladores, de los cuales 29 participaron en el desarrollo por primera vez.
En esta nueva versión de Git 2.30 en la configuración, el parámetro help.autocorrect ahora se puede tomar el valor ‘never’ para deshabilitar por completo la lógica para detectar errores tipográficos en los nombres de los comandos (de forma predeterminada, si se especifica un comando que no existe, git analiza los errores tipográficos típicos y ejecuta el comando corregido si solo se especifica una opción de reemplazo).
Otro cambio que se destaca de esta nueva versión de Git 2.30, es en las plantillas de userdiff que se han actualizado para PHP, Rust y CSS.
Además de que también se menciona que se agregó la capacidad de expandir comandos que son alias a la secuencia de comandos de autocompletado de opciones de la línea de comandos asi como también el soporte para parámetros «git stash show» que son similares a los parámetros «git diff» y tambien los scripts de autocompletado actualizados para Zsh.
Por otra parte se menciona que a la opción «-I <regex>» se ha agregado a los comandos de la familia «git diff» para ignorar las partes donde los cambios coinciden con un patrón dado y que se ha proporcionado la capacidad de personalizar el tamaño de los nombres de archivo creados por el comando «git format-patch» (anteriormente había un límite de 64 caracteres).
En la opción «–end-of-options» se ha agregado al comando «git rev-parse», que ayuda en los scripts a separar explícitamente el parámetro con revisión, por ejemplo «git rev-parse –verify -q –end-of-options $rev».
En «git update-ref –stdin» se agregó la capacidad de procesar múltiples transacciones en una sesión.
Se agregó la opción «–literal-value» a varios subcomandos «git config» para pasar el valor value_regex no como una expresión regular, sino como una cadena para buscar una coincidencia exacta.
De los demás cambios que se destacan en el anuncio de la nueva versión:
- Se permiten niveles de compresión superiores a -9 en «git archive» al crear tar.gz.
- Se agregó soporte para definir funciones en bash y POSIX shell.
- En la «lista de árboles de trabajo de git», se implementa la visualización del signo de bloqueo de árboles de trabajo.
- Continuó la reescritura del comando «git bisect» en lenguaje C.
- Para el comando «git diff A … B», se sugiere un análogo más informativo de «git diff –merge-base A B».
- Se continúa con el desarrollo del comando «git maintenance», una versión extendida de «git gc».
- Se agregó la opción «–force-if-includes» a «git push», con el objetivo de resolver el problema de perder confirmaciones cuando se usa el comando «git push –force-with-lease [= <ref>]» incorrectamente.
- Especificar «–force-if-includes» junto con «–force-with-lease» verifica adicionalmente la relevancia de las confirmaciones reemplazadas.
- Para «git clone», se ha agregado la configuración clone.defaultremotename, lo que le permite definir el nombre que se usará para hacer referencia al host desde el cual se clonó el repositorio.
- Para «git checkout» se agregó la opción checkout.guess para configurar el uso de la opción «–guess» por defecto.
Finalmente, si estás interesado en conocer más al respecto sobre esta nueva versión de Git 2.30, puedes consultar los detalles dirigiéndote al siguiente enlace.