{"id":108813,"date":"2023-06-02T15:10:15","date_gmt":"2023-06-02T13:10:16","guid":{"rendered":"https:\/\/prohoster.info\/?p=108813"},"modified":"2023-06-02T17:30:17","modified_gmt":"2023-06-02T15:30:17","slug":"dostupna-sistema-upravleniya-ishodnymi-tekstami-git-2-41","status":"publish","type":"post","link":"https:\/\/prohoster.info\/es\/blog\/news\/dostupna-sistema-upravleniya-ishodnymi-tekstami-git-2-41","title":{"rendered":"Est\u00e1 disponible el sistema de control de versiones Git 2.41","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Despu\u00e9s de tres meses de desarrollo, se publica la versi\u00f3n 2.41 del sistema distribuido de control de versiones Git. Git es uno de los sistemas de control de versiones m\u00e1s populares, confiables y de alto rendimiento, que proporciona herramientas flexibles para el desarrollo no lineal, basadas en ramificaci\u00f3n y fusi\u00f3n de ramas. Para garantizar la integridad del historial y la resistencia a cambios retroactivos, se utiliza un hashing impl\u00edcito de todo el historial anterior en cada commit, y tambi\u00e9n es posible garantizar digitalmente las firmas de los desarrolladores en etiquetas y commits individuales.     <\/p>\n<p>Comparado con la versi\u00f3n anterior, se han adoptado 542 cambios en la nueva versi\u00f3n, preparados con la participaci\u00f3n de 95 desarrolladores, de los cuales 29 han participado en el desarrollo por primera vez. Las principales novedades son:  <\/p>\n<ul>\n<li class=\"l\"> Se ha mejorado el manejo de objetos inalcanzables, que no tienen referencias en el repositorio (no est\u00e1n referenciados por ramas o etiquetas). Los objetos inalcanzables son eliminados por el recolector de basura, pero permanecen en el repositorio durante un tiempo determinado antes de ser eliminados, para evitar condiciones de carrera. Para rastrear el periodo durante el cual los objetos inalcanzables siguen presentes, es necesario vincularles marcas con la hora de modificaci\u00f3n de dichos objetos, lo que impide almacenarlos en un mismo archivo pack, donde todos los objetos tienen un tiempo conjunto de modificaci\u00f3n. Anteriormente, cada objeto inalcanzable se guardaba en un archivo separado, lo que causaba problemas cuando hab\u00eda un gran n\u00famero de objetos inalcanzables recientes que a\u00fan no eran candidatos a eliminaci\u00f3n. En la nueva versi\u00f3n, por defecto se utiliza el mecanismo de \u2018cruft packs\u2019 para empaquetar objetos inalcanzables, permitiendo almacenar todos los objetos inalcanzables en un mismo archivo pack, mientras que los datos sobre la hora de modificaci\u00f3n de cada objeto se reflejan en una tabla separada, que se almacena en un archivo con extensi\u00f3n \u2018.mtimes\u2019 y se vincula mediante un archivo \u00edndice con extensi\u00f3n \u2018.idx\u2019.    <center><img decoding=\"async\" alt=\"Est\u00e1 disponible el sistema de control de versiones Git 2.41\" src=\"\/wp-content\/uploads\/2023\/06\/1158b26b1dfd1c16c93017669224d7a4.png\" style=\"display:block;margin: 0 auto;\" \/><\/center>\n<li class=\"l\"> Por defecto se ha habilitado el registro en disco del \u00edndice inverso (revindex) para archivos pack. En las pruebas realizadas en el repositorio torvalds\/linux, la aplicaci\u00f3n del \u00edndice inverso permiti\u00f3 acelerar las operaciones intensivas en recursos de \u2018git push\u2019 en 1.49 veces, y operaciones simples, como calcular el tama\u00f1o de un objeto usando \u2018git cat-file \u2014batch=\u2019%(objectsize:disk)'\u2019 en 77 veces. Los archivos (\u2018.rev\u2019) con \u00edndice inverso se guardar\u00e1n dentro del repositorio en el directorio \u2018.git\/objects\/pack\u2019.\n<p>Recordemos que Git almacena todos los datos en forma de objetos, que se colocan en archivos separados. Para mejorar la eficiencia al trabajar con el repositorio, los objetos se agrupan adicionalmente en archivos pack, donde la informaci\u00f3n se presenta en forma de flujo de objetos que se siguen unos a otros (un formato similar se utiliza al transmitir objetos con los comandos git fetch y git push). Para cada archivo pack se crea un archivo \u00edndice (.idx), que permite identificar r\u00e1pidamente la posici\u00f3n en el archivo pack donde se almacena un objeto dado, utilizando su identificador.     <\/p>\n<p>El nuevo \u00edndice inverso incluido en esta versi\u00f3n est\u00e1 dise\u00f1ado para optimizar el proceso de identificaci\u00f3n de objetos utilizando la informaci\u00f3n de ubicaci\u00f3n en el archivo pack. Anteriormente, esta conversi\u00f3n se realizaba en tiempo real durante el an\u00e1lisis del archivo pack y solo se almacenaba en memoria, lo que no permit\u00eda reutilizar tales \u00edndices y obligaba a generar el \u00edndice cada vez. La operaci\u00f3n de construcci\u00f3n del \u00edndice se reduce a crear un array de pares \"objeto-posicion\" y a ordenarlo por posici\u00f3n, lo que puede llevar mucho tiempo para archivos pack grandes.     <\/p>\n<p>Por ejemplo, la operaci\u00f3n de salida del contenido de los objetos, que utiliza el \u00edndice directo, se ejecut\u00f3 62 veces m\u00e1s r\u00e1pido que la operaci\u00f3n de visualizaci\u00f3n del tama\u00f1o de los objetos, para la cual los datos de enlace de la posici\u00f3n con el objeto no estaban indexados. Tras el uso del \u00edndice inverso, las operaciones mencionadas comenzaron a llevar aproximadamente el mismo tiempo. Los \u00edndices inversos tambi\u00e9n permiten acelerar las operaciones de env\u00edo de objetos al ejecutar los comandos fetch y push mediante la transmisi\u00f3n directa de datos preestablecidos desde el disco.    <center><img decoding=\"async\" alt=\"Est\u00e1 disponible el sistema de control de versiones Git 2.41\" src=\"\/wp-content\/uploads\/2023\/06\/ed6cb7102da37d1262fd3079ac983158.png\" style=\"display:block;margin: 0 auto;\" \/><\/center>      <\/p>\n<li class=\"l\"> En el protocolo \"credential helper\", que se utiliza para pasar credenciales al acceder a repositorios con acceso restringido, se ha a\u00f1adido el soporte para la transmisi\u00f3n de encabezados WWW-Authenticate entre el gestor de credenciales y el servicio donde se realiza la autenticaci\u00f3n. El soporte para el encabezado WWW-Authenticate permite transmitir par\u00e1metros de scope de OAuth para una separaci\u00f3n de acceso m\u00e1s granular a los repositorios y una delimitaci\u00f3n de las \u00e1reas accesibles para las solicitudes.\n<li class=\"l\"> Se ha a\u00f1adido la opci\u00f3n de formato \u00ab%(ahead-behind:&lt;base&gt;)\u00bb al comando for-each-ref, lo que permite obtener de una vez informaci\u00f3n sobre el n\u00famero de commits presentes o ausentes en una rama determinada en relaci\u00f3n a otra rama (cu\u00e1nto una rama se retrasa o adelanta a otra a nivel de commits). Anteriormente, para obtener esta informaci\u00f3n se requer\u00eda ejecutar dos comandos separados: \u00abgit rev-list \u2014count main..my-feature\u00bb para obtener el n\u00famero de commits \u00fanicos en la rama y \u00abgit rev-list \u2014count my-feature..main\u00bb para obtener el n\u00famero de commits ausentes. Ahora estos c\u00e1lculos se pueden reducir a un solo comando, lo que simplifica la escritura de manejadores y reduce el tiempo de ejecuci\u00f3n. Por ejemplo, para mostrar ramas no fusionadas y evaluar su retraso o adelanto respecto a su rama principal, se puede utilizar una l\u00ednea: $ git for-each-ref \u2014no-merged=origin\/HEAD \n \u2014format='%(refname:short) %(ahead-behind:origin\/HEAD)' \n refs\/heads\/tb\/ | column -t       tb\/cruft-extra-tips 2 96     tb\/for-each-ref\u2014exclude 16 96     tb\/roaring-bitmaps 47 3  en lugar del script que se utilizaba anteriormente, que se ejecutaba 17 veces m\u00e1s lento: $ git for-each-ref \u2014format='%(refname:short)' \u2014no-merged=origin\/HEAD \n refs\/heads\/tb |       while read ref       do         ahead='$(git rev-list \u2014count origin\/HEAD..$ref)'         behind='$(git rev-list \u2014count $ref..origin\/HEAD)'         printf \u2018%s %d %d\n\u2019 \u2018$ref\u2019 \u2018$ahead\u2019 \u2018$behind\u2019       done | column -t       tb\/cruft-extra-tips 2 96     tb\/for-each-ref\u2014exclude 16 96     tb\/roaring-bitmaps 47 3\n<li class=\"l\"> Se ha a\u00f1adido la opci\u00f3n \u00ab\u2014porcelain\u00bb al comando \u00abgit fetch\u00bb, que al especificarla genera una salida en el formato \u00ab   \u00bb, menos legible pero m\u00e1s conveniente para su an\u00e1lisis en scripts.\n<li class=\"l\"> Se ha a\u00f1adido la configuraci\u00f3n \u00abfetch.hideRefs\u00bb, que permite acelerar las operaciones de \u00abgit fetch\u00bb al ocultar parte de las referencias en el repositorio local durante la verificaci\u00f3n de si el servidor env\u00eda el conjunto completo de objetos, lo que ahorra tiempo al limitar la verificaci\u00f3n solo a $remote, reducci\u00f3n del tiempo de ejecuci\u00f3n de la operaci\u00f3n \u00abgit fetch\u00bb de 20 minutos a 30 segundos. $ git -c fetch.hideRefs=refs -c fetch.hideRefs=!refs\/remotes\/$remote \n fetch $remote <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/es\/server\/\"   title=\"servidores\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"1714\">servidores<\/a>, de las cuales se extraen datos directamente. Por ejemplo, al realizar pruebas en un sistema con repositorios que contienen un gran n\u00famero de enlaces externos rastreados, excluir todas las referencias, excepto aquellas dirigidas al <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/es\/server\/dts-shicago\/\"   title=\"servidor\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"2936\">servidor<\/a> $remote, permitiendo reducir el tiempo de ejecuci\u00f3n de la operaci\u00f3n \u00abgit fetch\u00bb de 20 minutos a 30 segundos.       $ git -c fetch.hideRefs=refs -c fetch.hideRefs=!refs\/remotes\/$remote \n fetch $remote\n<li class=\"l\"> En el comando \u00abgit fsck\u00bb se ha implementado la posibilidad de verificar da\u00f1os, la conformidad de sumas de verificaci\u00f3n y la validez de los valores en los mapas de disponibilidad de bits y los \u00edndices inversos.\n<li class=\"l\"> En el equipo &#171;git clone &#8212;local&#187; se ha implementado la salida de error al intentar copiar desde un repositorio que contiene enlaces simb\u00f3licos dentro de $GIT_DIR.        <\/ul>\n<p>Fuente: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=59234\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u043e\u0441\u043b\u0435 \u0442\u0440\u0451\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \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.41. Git \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0434\u043d\u043e\u0439 \u0438\u0437 \u0441\u0430\u043c\u044b\u0445 \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u044b\u0445, \u043d\u0430\u0434\u0451\u0436\u043d\u044b\u0445 \u0438 \u0432\u044b\u0441\u043e\u043a\u043e\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0432\u0435\u0440\u0441\u0438\u044f\u043c\u0438, \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0449\u0435\u0439 \u0433\u0438\u0431\u043a\u0438\u0435 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430 \u043d\u0435\u043b\u0438\u043d\u0435\u0439\u043d\u043e\u0439 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438, \u0431\u0430\u0437\u0438\u0440\u0443\u044e\u0449\u0438\u0435\u0441\u044f \u043d\u0430 \u043e\u0442\u0432\u0435\u0442\u0432\u043b\u0435\u043d\u0438\u0438 \u0438 \u0441\u043b\u0438\u044f\u043d\u0438\u0438 \u0432\u0435\u0442\u043e\u043a. \u0414\u043b\u044f \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u0446\u0435\u043b\u043e\u0441\u0442\u043d\u043e\u0441\u0442\u0438 \u0438\u0441\u0442\u043e\u0440\u0438\u0438 \u0438 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u0441\u0442\u0438 \u043a \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f\u043c &#171;\u0437\u0430\u0434\u043d\u0438\u043c \u0447\u0438\u0441\u043b\u043e\u043c&#187; \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442\u0441\u044f \u043d\u0435\u044f\u0432\u043d\u043e\u0435 \u0445\u0435\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0432\u0441\u0435\u0439 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0438\u0441\u0442\u043e\u0440\u0438\u0438 \u0432 \u043a\u0430\u0436\u0434\u043e\u043c \u043a\u043e\u043c\u043c\u0438\u0442\u0435, [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":108814,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-108813","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=\"description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0442\u0440\u0451\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \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.41.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/es\/blog\/news\/dostupna-sistema-upravleniya-ishodnymi-tekstami-git-2-41\" \/>\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\udd47\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \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.41 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0442\u0440\u0451\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \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.41.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/es\/blog\/news\/dostupna-sistema-upravleniya-ishodnymi-tekstami-git-2-41\" \/>\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=\"2023-06-02T13:10:16+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2023-06-02T15:30:17+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\udd47Sistema de control de versiones Git 2.41 disponible | ProHoster","description":"Despu\u00e9s de tres meses de desarrollo, se ha publicado la versi\u00f3n del sistema de control de versiones distribuido Git 2.41.","canonical_url":"https:\/\/prohoster.info\/es\/blog\/news\/dostupna-sistema-upravleniya-ishodnymi-tekstami-git-2-41","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\udd47\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \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.41 | ProHoster","og:description":"\u041f\u043e\u0441\u043b\u0435 \u0442\u0440\u0451\u0445 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \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.41.","og:url":"https:\/\/prohoster.info\/es\/blog\/news\/dostupna-sistema-upravleniya-ishodnymi-tekstami-git-2-41","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":"2023-06-02T13:10:16+00:00","article:modified_time":"2023-06-02T15:30:17+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"108813","title":null,"description":null,"keywords":null,"keyphrases":null,"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-02-09 16:51:35","updated":"2026-02-09 21:42:06","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\/108813","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\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/comments?post=108813"}],"version-history":[{"count":2,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/108813\/revisions"}],"predecessor-version":[{"id":160216,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/posts\/108813\/revisions\/160216"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media\/108814"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/media?parent=108813"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/categories?post=108813"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/es\/wp-json\/wp\/v2\/tags?post=108813"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}