{"id":182406,"date":"2026-07-01T02:48:39","date_gmt":"2026-07-01T00:48:40","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/git-2-55"},"modified":"2026-07-01T02:48:39","modified_gmt":"2026-07-01T00:48:40","slug":"git-2-55","status":"publish","type":"post","link":"https:\/\/prohoster.info\/es\/blog\/news\/git-2-55","title":{"rendered":"Git 2.55","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" src=\"\/wp-content\/uploads\/2026\/07\/6dbdbc163ff5da36a60137dc1b576b56.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p><noindex>      <noindex><\/p>\n<p><a rel=\"nofollow\" href=\"https:\/\/lore.kernel.org\/lkml\/xmqqv7b1w9vr.fsf@gitster.g\/\">Presentado<\/a> lanzamiento del sistema distribuido de gesti\u00f3n de textos fuente <a rel=\"nofollow\" href=\"http:\/\/git-scm.com\/\">Git 2.55<\/a>. Entre los principales cambios: inclusi\u00f3n por defecto de la compilaci\u00f3n con Rust, implementaci\u00f3n para Linux del proceso fsmonitor, nueva estrategia de reempaquetado del \u00edndice MIDX incremental, comando git history fixup para correcci\u00f3n de commits, optimizaci\u00f3n en la generaci\u00f3n de mapas de disponibilidad de objetos, soporte para la ejecuci\u00f3n paralela de hooks, comando git format-rev. C\u00f3digo de Git <a rel=\"nofollow\" href=\"https:\/\/github.com\/git\/git\/\">se distribuye<\/a> bajo la licencia GPLv2+.<\/p>\n<p><\/noindex><\/noindex><\/p>\n<p>Comparado con la versi\u00f3n anterior, se han aceptado 505 cambios en la nueva versi\u00f3n, preparados con la participaci\u00f3n de 100 desarrolladores, 33 de los cuales han participado por primera vez en el desarrollo de Git.<\/p>\n<p><noindex><\/p>\n<p>Novedades principales (<a rel=\"nofollow\" href=\"https:\/\/github.blog\/open-source\/git\/highlights-from-git-2-55\/\">github.blog<\/a>, <a rel=\"nofollow\" href=\"https:\/\/about.gitlab.com\/blog\/whats-new-in-git-2-55-0\/\">gitlab.com\/blog<\/a>, <a rel=\"nofollow\" href=\"https:\/\/gitlab.com\/git-scm\/git\/-\/blob\/HEAD\/Documentation\/RelNotes\/2.55.0.adoc\">gitlab.com\/git-scm<\/a>):<\/p>\n<p><\/noindex><\/p>\n<ul>\n<li>funciona hasta que se finalice manualmente. Por lo tanto, puede ser \u00fatil la opci\u00f3n <a rel=\"nofollow\" href=\"https:\/\/gitlab.com\/git-scm\/git\/-\/commit\/32d5b905909e781786c4735e6bd71503b23e4fb1\">incluida<\/a> soporte para componentes en el lenguaje Rust. El compilador rustc <a rel=\"nofollow\" href=\"https:\/\/gitlab.com\/git-scm\/git\/-\/blob\/HEAD\/Documentation\/BreakingChanges.adoc\">se ha agregado<\/a> entre las dependencias de compilaci\u00f3n. Para compilar sin Rust se puede utilizar la bandera NO_RUST=1 al ejecutar la utilidad make o -Drust=disabled al realizar meson configure. La capacidad de deshabilitar la compilaci\u00f3n con Rust se mantendr\u00e1 hasta la rama Git 3.0, donde Rust ser\u00e1 <a rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=63914\">activado<\/a> una de las dependencias obligatorias. En Rust se ha implementado una capa para la portabilidad entre configuraciones con hash SHA-1 y SHA-256, as\u00ed como algunas funciones internas, como la codificaci\u00f3n y decodificaci\u00f3n de valores enteros de longitud variable. Se espera que en el futuro se reescriban en Rust componentes internos m\u00e1s significativos de Git.<\/li>\n<li>Al equipo experimental \"<a rel=\"nofollow\" href=\"https:\/\/git-scm.com\/docs\/git-history\/2.55.0\">git history\"<\/a>, que ofrece la posibilidad de reescribir el historial de cambios, se ha a\u00f1adido la operaci\u00f3n \u00abgit history fixup\u00bb para corregir un commit. La operaci\u00f3n fixup permite trasladar los cambios a\u00f1adidos a trav\u00e9s de git add a un commit anterior y reescribir autom\u00e1ticamente todos los commits posteriores, similar a ejecutar el comando git commit --fixup= y lanzar git rebase --autosquash ~.<\/li>\n<li>Para la plataforma Linux se ha implementado un proceso en segundo plano <a rel=\"nofollow\" href=\"https:\/\/git-scm.com\/docs\/git-fsmonitor--daemon\/2.55.0\">fsmonitor<\/a>, que rastrea cambios en el sistema de archivos mediante el mecanismo <a rel=\"nofollow\" href=\"https:\/\/man7.org\/linux\/man-pages\/man7\/inotify.7.html\">inotify<\/a> y permite evitar revisar todo el directorio de trabajo al ejecutar comandos como git status. La activaci\u00f3n se realiza a trav\u00e9s de la configuraci\u00f3n \u00ab<a rel=\"nofollow\" href=\"https:\/\/git-scm.com\/docs\/git-config#Documentation\/git-config.txt-corefsmonitor\">core.fsmonitor<\/a>\u00bb.<\/li>\n<li>Al comando git repack se le ha a\u00f1adido el modo --write-midx=incremental, que implementa una nueva estrategia para actualizar los metadatos en el \u00edndice MIDX incremental (multi-pack index), permitiendo evitar la reempaquetaci\u00f3n de todo el \u00edndice. En el \u00edndice incremental de m\u00faltiples paquetes, en lugar de un gran \u00edndice que contiene informaci\u00f3n sobre la distribuci\u00f3n de objetos en archivos pack, se utiliza una separaci\u00f3n en capas: cada capa abarca un n\u00famero determinado de archivos pack y se almacena en un archivo bitmap separado. Esta estructura permite a\u00f1adir datos sobre objetos en nuevos archivos pack al \u00edndice, agregando nuevas capas al \u00edndice sin reconstruir las capas ya existentes. El comando git repack --write-midx=incremental permite a\u00f1adir una nueva capa al \u00edndice MIDX incremental, abarcando los archivos pack creados recientemente. Combinado con el modo de empaquetado de repositorios --geometric, el nuevo comando permite combinar nuevos objetos de varios archivos pack en un archivo pack m\u00e1s grande y, si es necesario, llevar a cabo el empaquetado y fusi\u00f3n de varias capas adyacentes del \u00edndice MIDX incremental. Esta estrategia permite durante la ejecuci\u00f3n de git repack reescribir solo las capas superiores, dejando intactas las capas grandes anteriores, adem\u00e1s de evitar la expansi\u00f3n descontrolada de la cadena de capas, manteniendo el n\u00famero total de capas en un nivel proporcionado al logaritmo del n\u00famero total de objetos.<\/li>\n<li>Se ha optimizado significativamente la generaci\u00f3n de bitmaps de disponibilidad de objetos gracias a un nuevo algoritmo de recorrido del \u00e1rbol de objetos, que excluye la recursi\u00f3n innecesaria, el almacenamiento en cach\u00e9 de las posiciones de objetos, la ordenaci\u00f3n de bitmaps antes de su combinaci\u00f3n mediante la operaci\u00f3n XOR y la reestructuraci\u00f3n del c\u00f3digo para la creaci\u00f3n de bitmaps de pseudofusi\u00f3n (<a rel=\"nofollow\" href=\"https:\/\/git-scm.com\/docs\/gitpacking\/2.55.0#_pseudo_merge_bitmaps\">pseudo-merge<\/a>). En el repositorio de prueba, las optimizaciones han reducido el tiempo de generaci\u00f3n de bitmaps de 612 a 294 segundos.<\/li>\n<li>Se ha implementado la capacidad de ejecutar de forma paralela ganchos independientes <a rel=\"nofollow\" href=\"https:\/\/git-scm.com\/docs\/githooks\">ganchos<\/a> en los archivos de configuraci\u00f3n. No se pueden ejecutar simult\u00e1neamente los ganchos que afectan al estado compartido o que lo tienen en cuenta, como los que cambian los comentarios de los commits o inspeccionan los \u00edndices y el \u00e1rbol de trabajo. Sin embargo, se pueden ejecutar simult\u00e1neamente ganchos para verificaci\u00f3n con linters y ejecuci\u00f3n de pruebas unitarias. Los ganchos que permiten la ejecuci\u00f3n en paralelo se configuran mediante el par\u00e1metro hook.nombre_del_gancho.parallel = true. El n\u00famero de trabajos que se inician simult\u00e1neamente se determina mediante la configuraci\u00f3n hook.jobs, hook.&lt;evento&gt;.jobs o la opci\u00f3n de l\u00ednea de comandos -j.<\/li>\n<li>En el comando git pack-objects --path-walk se ha implementado la posibilidad de especificar filtros como blob:none, blob:limit=, tree:0, object:type=, sparse: y combine:. En una prueba realizada, la eliminaci\u00f3n de blobs al ejecutar --path-walk permiti\u00f3 reducir el tama\u00f1o del archivo pack generado en un 16%.<\/li>\n<li>Se ha a\u00f1adido el comando git format-rev para dar formato a revisiones y nombres de objetos mencionados en listas de commits o que aparecen en texto arbitrario (por ejemplo, se puede utilizar en ganchos para procesar comentarios de commits).<\/li>\n<\/ul>\n<p>       git last-modified | git format-rev --stdin-mode=text --format=%an<\/p>\n<p>       Junio C Hamano\tbuiltin\/commit.c<\/p>\n<ul>\n<li>Por defecto, se ha habilitado el escape de la mayor\u00eda de las secuencias de control de terminal en los mensajes informativos y el texto de errores transmitidos por el servidor. Al interactuar con un servidor malicioso, dichas secuencias de escape podr\u00edan utilizarse para ocultar o modificar la salida, por ejemplo, mediante secuencias de escape para mover el cursor y limpiar el texto. Se mantiene el soporte para secuencias de escape para resaltar elementos en color.<\/li>\n<li>El comando git checkout -m ahora guarda autom\u00e1ticamente los cambios locales en conflicto en el \u00e1rea de stash sin necesidad de resolver el conflicto inmediatamente.<\/li>\n<li>Se ha a\u00f1adido a git push la posibilidad de enviar ramas a varios servidores Git externos con un solo comando. Por ejemplo, para enviar la rama main no solo al servidor principal, sino tambi\u00e9n a los espejos, se puede crear un grupo de publicaci\u00f3n con servidores como github, gitlab y mirror:<\/li>\n<\/ul>\n<p>git config remotes.publish \"github gitlab mirror\"<br \/>\ngit push publish main<\/p>\n<ul>\n<li>Se ha a\u00f1adido la opci\u00f3n --graph-lane-limit= al comando git log --graph para limitar el n\u00famero de franjas verticales al visualizar ramas, lo que permite dejar espacio en la pantalla para los datos de los commits en repositorios con un gran n\u00famero de ramas.<\/li>\n<\/ul>\n<p>\u2026<br \/>\n* | | | |   619931f561 Fusionar rama \u2018dl\/posix-unused-warning-clang\u2019<br \/>\n|\\ \\ \\ \\ \\<br \/>\n| * | | | ~ cf48887610 compat\/posix.h: simplificar la comparaci\u00f3n GIT_GNUC_PREREQ()<br \/>\n| * | | | ~ ffd45926dc compat\/posix.h: limpiar GIT_GNUC_PREREQ() y UNUSED<br \/>\n|\\ \\ \\ \\ \\~<br \/>\n| * | | | ~ 3f5203eeb4 ls-files: filtrar pathspec antes de lstat<\/p>\n<ul>\n<li>Se ha a\u00f1adido la opci\u00f3n --max-count-oldest= a los comandos git log y git rev-list, que permite seleccionar los N commits m\u00e1s antiguos en el rango.<\/li>\n<\/ul>\n<p>Fuente: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.linux.org.ru\/news\/development\/18330405\">linux.org.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u0440\u0435\u043b\u0438\u0437 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u043c\u0438 \u0442\u0435\u043a\u0441\u0442\u0430\u043c\u0438 Git 2.55. \u0421\u0440\u0435\u0434\u0438 \u043a\u043b\u044e\u0447\u0435\u0432\u044b\u0445 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439: \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e \u0441\u0431\u043e\u0440\u043a\u0438 \u0441 Rust, \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0434\u043b\u044f Linux \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 fsmonitor, \u043d\u043e\u0432\u0430\u044f \u0441\u0442\u0440\u0430\u0442\u0435\u0433\u0438\u044f \u043f\u0435\u0440\u0435\u0443\u043f\u0430\u043a\u043e\u0432\u043a\u0438 \u0438\u043d\u043a\u0440\u0435\u043c\u0435\u043d\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e MIDX-\u0438\u043d\u0434\u0435\u043a\u0441\u0430, \u043a\u043e\u043c\u0430\u043d\u0434\u0430 git history fixup \u0434\u043b\u044f \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u043a\u043e\u043c\u043c\u0438\u0442\u0430, \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0431\u0438\u0442\u043e\u0432\u044b\u0445 \u043a\u0430\u0440\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438 \u043e\u0431\u044a\u0435\u043a\u0442\u043e\u0432, \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430 \u043f\u0430\u0440\u0430\u043b\u043b\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0445\u0443\u043a\u043e\u0432, \u043a\u043e\u043c\u0430\u043d\u0434\u0430 git format-rev. \u041a\u043e\u0434 Git \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0434 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439 GPLv2+. \u041f\u043e [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":8,"featured_media":182407,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-182406","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Erik Peterson\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/es\/blog\/news\/git-2-55\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"es_ES\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47Git 2.55 | ProHoster\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/es\/blog\/news\/git-2-55\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2026-07-01T00:48:40+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-07-01T00:48:40+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Git 2.55 | ProHoster","description":"","canonical_url":"https:\/\/prohoster.info\/es\/blog\/news\/git-2-55","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"es_ES","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47Git 2.55 | ProHoster","og:url":"https:\/\/prohoster.info\/es\/blog\/news\/git-2-55","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2026-07-01T00:48:40+00:00","article:modified_time":"2026-07-01T00:48:40+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"182406","title":null,"description":null,"keywords":null,"keyphrases":{"focus":[],"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-08-05 12:22:12","updated":"2026-08-05 12:22:12","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/182406","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/comments?post=182406"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/182406\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media\/182407"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=182406"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=182406"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=182406"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}