{"id":104517,"date":"2022-06-28T09:36:45","date_gmt":"2022-06-28T07:36:45","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/vypusk-sistemy-upravleniya-ishodnymi-tekstami-git-2-37"},"modified":"2022-06-28T09:36:45","modified_gmt":"2022-06-28T07:36:45","slug":"vypusk-sistemy-upravleniya-ishodnymi-tekstami-git-2-37","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/news\/vypusk-sistemy-upravleniya-ishodnymi-tekstami-git-2-37","title":{"rendered":"Sortie du syst\u00e8me de gestion de versions Git 2.37","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>La version 2.37 du syst\u00e8me de gestion de version distribu\u00e9 Git est pr\u00e9sent\u00e9e. Git est l'un des syst\u00e8mes de gestion de versions les plus populaires, fiables et performants, offrant des moyens flexibles de d\u00e9veloppement non lin\u00e9aire bas\u00e9s sur la ramification et la fusion des branches. Pour garantir l'int\u00e9grit\u00e9 de l'historique et la r\u00e9sistance aux modifications r\u00e9troactives, un hachage implicite de toute l'histoire pr\u00e9c\u00e9dente est utilis\u00e9 dans chaque commit, et il est \u00e9galement possible de certifier num\u00e9riquement les tags et commits par les d\u00e9veloppeurs.       <\/p>\n<p>Compar\u00e9 \u00e0 la version pr\u00e9c\u00e9dente, 395 modifications ont \u00e9t\u00e9 accept\u00e9es dans cette nouvelle version, pr\u00e9par\u00e9es avec la participation de 75 d\u00e9veloppeurs, dont 20 ont particip\u00e9 au d\u00e9veloppement pour la premi\u00e8re fois. Les principales nouveaut\u00e9s :  <\/p>\n<ul>\n<li class=\"l\"> Le m\u00e9canisme des index partielles (sparse index), maintenant pr\u00eat \u00e0 \u00eatre largement utilis\u00e9, couvre seulement une partie du d\u00e9p\u00f4t. Les index partielles permettent d'am\u00e9liorer les performances et d'\u00e9conomiser de l'espace dans les d\u00e9p\u00f4ts o\u00f9 des op\u00e9rations de clonage partiel (sparse-checkout) sont effectu\u00e9es ou lorsqu'un travail est r\u00e9alis\u00e9 avec une copie incompl\u00e8te du d\u00e9p\u00f4t. Dans cette nouvelle version, l'int\u00e9gration des index partielles dans les commandes \u00ab git show \u00bb, \u00ab git sparse-checkout \u00bb et \u00ab git stash \u00bb a \u00e9t\u00e9 finalis\u00e9e. L'am\u00e9lioration de performance la plus notable avec l'utilisation des index partielles est observ\u00e9e dans la commande \u00ab git stash \u00bb, dont la vitesse d'ex\u00e9cution a augment\u00e9 de 80 % dans certaines situations.\n<li class=\"l\"> Un nouveau m\u00e9canisme \u00ab cruft packs \u00bb a \u00e9t\u00e9 mis en place pour emballer des objets inaccessibles (unreachable) qui n'ont pas de r\u00e9f\u00e9rences dans le d\u00e9p\u00f4t (aucune branche ou tag ne pointe vers eux). Les objets inaccessibles sont supprim\u00e9s par le ramasse-miettes, mais restent dans le d\u00e9p\u00f4t pendant un certain temps avant leur suppression pour \u00e9viter les conditions de concurrence. Pour suivre la p\u00e9riode pendant laquelle ces objets restent inaccessibles, il est n\u00e9cessaire de leur attacher des labels avec des timestamps de modifications, ce qui emp\u00eache de les stocker dans un m\u00eame pack-file, o\u00f9 tous les objets ont un timestamp commun. La m\u00e9thode pr\u00e9c\u00e9demment appliqu\u00e9e de sauvegarde de chaque objet dans un fichier distinct posait des probl\u00e8mes en cas de pr\u00e9sence d'un grand nombre d'objets inaccessibles r\u00e9cents, qui n'\u00e9taient pas encore soumis \u00e0 suppression. Le m\u00e9canisme propos\u00e9 \u00ab cruft packs \u00bb permet de stocker tous les objets inaccessibles dans un seul pack-file, et de refl\u00e9ter les donn\u00e9es de temps de modification de chaque objet dans une table distincte, conserv\u00e9e dans un fichier avec l'extension \u00ab .mtimes \u00bb.\n<li class=\"l\"> Un m\u00e9canisme int\u00e9gr\u00e9 de suivi des modifications dans le syst\u00e8me de fichiers a \u00e9t\u00e9 mis en \u0153uvre pour Windows et macOS, permettant d'\u00e9viter de parcourir l'ensemble du r\u00e9pertoire de travail lors de l'ex\u00e9cution d'op\u00e9rations telles que &#171;git status&#187;. Auparavant, des utilitaires externes tels que Watchman pouvaient \u00eatre utilis\u00e9s pour le suivi des modifications via des hooks, mais cela n\u00e9cessitait l'installation de programmes suppl\u00e9mentaires et une configuration. D\u00e9sormais, cette fonctionnalit\u00e9 est int\u00e9gr\u00e9e et peut \u00eatre activ\u00e9e par la commande &#171;git config core.fsmonitor true&#187;.\n<li class=\"l\"> Le support de l'alternative &#171;&#8212;cone&#187; pour la commande &#171;git sparse-checkout&#187; est d\u00e9sormais obsol\u00e8te. Ce mode permettait de d\u00e9finir des fichiers sp\u00e9cifiques \u00e0 cloner en utilisant la syntaxe &#171;.gitignore&#187;, mais ne permettait pas l'utilisation d'index partiels pour l'optimisation.\n<li class=\"l\"> La flexibilit\u00e9 de la configuration de l'appel \u00e0 fsync() pour le vidage des modifications sur le disque a \u00e9t\u00e9 augment\u00e9e. Le param\u00e8tre &#171;core.fsyncMethod&#187; prend d\u00e9sormais en charge la strat\u00e9gie de synchronisation &#171;batch&#187;, permettant d'acc\u00e9l\u00e9rer le processus lors de l'\u00e9criture d'un grand nombre de fichiers individuels en collectant les modifications dans le cache d'\u00e9criture, vid\u00e9es par un seul appel \u00e0 fsync(). Un test effectu\u00e9, o\u00f9 500 fichiers ont \u00e9t\u00e9 ajout\u00e9s avec la commande &#171;git add&#187;, a \u00e9t\u00e9 termin\u00e9 en 0,15 seconde avec le nouveau mode, alors que l'appel \u00e0 fsync() pour chaque fichier n\u00e9cessitait 1,88 seconde, et sans utiliser fsync \u2014 0,06 seconde.\n<li class=\"l\"> Des options ont \u00e9t\u00e9 ajout\u00e9es aux commandes de travers\u00e9e des branches, telles que &#171;git log&#187; et &#171;git rev-list&#187;, avec l'option &#171; --since-as-filter=X&#187;, permettant d'exclure les informations sur les commits dont le temps de cr\u00e9ation est ant\u00e9rieur \u00e0 &#171;X&#187;. Contrairement \u00e0 l'option &#171;&#8212;since&#187;, la nouvelle commande est mise en \u0153uvre sous forme de filtre, sans arr\u00eater le parcours apr\u00e8s le premier commit d\u00e9passant le temps sp\u00e9cifi\u00e9.\n<li class=\"l\"> Dans la commande &#171;git remote&#187;, lorsque le drapeau &#171;-v&#187; est indiqu\u00e9, des informations sur les clones partiels du d\u00e9p\u00f4t sont affich\u00e9es.\n<li class=\"l\"> Une nouvelle option \u00abtransfer.credentialsInUrl\u00bb a \u00e9t\u00e9 ajout\u00e9e, qui peut prendre les valeurs \u00abwarn\u00bb, \u00abdie\u00bb et \u00aballow\u00bb. En cas d\u2019indication des donn\u00e9es d\u2019identification en texte clair dans le param\u00e8tre \u00abremote..url\u00bb, toute tentative d\u2019ex\u00e9cuter les op\u00e9rations \u00abfetch\u00bb ou \u00abpush\u00bb sera interrompue par une erreur si l\u2019option \u00abtransfer.credentialsInUrl\u00bb est d\u00e9finie sur \u00abdie\u00bb, ou par un avertissement si elle est d\u00e9finie sur \u00abwarn\u00bb.\n<li class=\"l\"> Par d\u00e9faut, une nouvelle impl\u00e9mentation du mode interactif de la commande \u00abgit add -i\u00bb est activ\u00e9e, r\u00e9\u00e9crite en C \u00e0 partir de Perl.        <\/ul>\n<p>Source : <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=57416\">opennet.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 \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.37. 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, \u0442\u0430\u043a\u0436\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0443\u0434\u043e\u0441\u0442\u043e\u0432\u0435\u0440\u0435\u043d\u0438\u0435 \u0446\u0438\u0444\u0440\u043e\u0432\u044b\u043c\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-104517","post","type-post","status-publish","format-standard","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\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\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.37.\" \/>\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\/fr\/blog\/news\/vypusk-sistemy-upravleniya-ishodnymi-tekstami-git-2-37\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\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\u0412\u044b\u043f\u0443\u0441\u043a \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.37 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\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.37.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/news\/vypusk-sistemy-upravleniya-ishodnymi-tekstami-git-2-37\" \/>\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=\"2022-06-28T07:36:45+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2022-06-28T07:36:45+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\udd47Lancement du syst\u00e8me de gestion de source Git 2.37 | ProHoster","description":"La sortie de la version 2.37 du syst\u00e8me de gestion de source distribu\u00e9 Git a \u00e9t\u00e9 pr\u00e9sent\u00e9e.","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/news\/vypusk-sistemy-upravleniya-ishodnymi-tekstami-git-2-37","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","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\u0412\u044b\u043f\u0443\u0441\u043a \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.37 | ProHoster","og:description":"\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\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.37.","og:url":"https:\/\/prohoster.info\/fr\/blog\/news\/vypusk-sistemy-upravleniya-ishodnymi-tekstami-git-2-37","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":"2022-06-28T07:36:45+00:00","article:modified_time":"2022-06-28T07:36:45+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"104517","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":"2022-06-28 07:37:48","updated":"2022-09-28 18:42:49","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/104517","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=104517"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/104517\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=104517"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=104517"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=104517"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}