{"id":103093,"date":"2022-01-25T15:36:40","date_gmt":"2022-01-25T13:36:40","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/vypusk-sistemy-upravleniya-ishodnymi-tekstami-git-2-35"},"modified":"2022-01-25T15:36:40","modified_gmt":"2022-01-25T13:36:40","slug":"vypusk-sistemy-upravleniya-ishodnymi-tekstami-git-2-35","status":"publish","type":"post","link":"https:\/\/prohoster.info\/en\/blog\/news\/vypusk-sistemy-upravleniya-ishodnymi-tekstami-git-2-35","title":{"rendered":"Release of the Git Source Code Management System 2.35","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>After two months of development, a release of the distributed version control system Git 2.35 has been published. Git is one of the most popular, reliable, and high-performance version control systems, offering flexible nonlinear development tools based on branching and merging. To ensure the integrity of the history and resilience to 'backdating' changes, implicit hashing of the entire previous history in each commit is used, and it is also possible to verify developers' digital signatures on individual tags and commits.       <\/p>\n<p>Compared to the previous release, the new version includes 494 changes prepared with the participation of 93 developers, 35 of whom participated in the development for the first time. Key innovations:  <\/p>\n<ul>\n<li class=\"l\"> The capabilities for using SSH keys to sign Git objects digitally have been expanded. To differentiate the validity periods of multiple keys, support for OpenSSH directives 'valid-before' and 'valid-after' has been added, which allows for proper handling of signatures after one of the developers rotates their key. Previously, there was an issue with separating signatures created with old and new keys \u2014 if the old key was deleted, it became impossible to verify signatures made with it; if kept, it would still be possible to create new signatures with the old key, even though a new key had already taken its place. With valid-before and valid-after, the scope of keys can be segmented based on the time of signature creation.\n<li class=\"l\"> In the configuration setting merge.conflictStyle, which allows the selection of the conflict information display mode during a merge, support for the 'zdiff3' mode has been added. This mode moves all standard lines specified at the beginning or end of a conflict outside of the conflict area, allowing for a more compact representation of information.\n<li class=\"l\"> A new mode '--staged' has been added to the 'git stash' command, which allows you to hide only the changes added to the index. This is useful in situations where you need to temporarily set aside part of complex changes to first add what is already ready, and deal with the rest later. This mode is similar to the 'git commit' command, which records only the changes placed in the index, but instead of creating a new commit, the result is saved to the temporary stash area in 'git stash --staged'. Once the changes are needed, they can be retrieved using the 'git stash pop' command.\n<li class=\"l\"> A new format specifier &#171;&#8212;format=%(describe)&#187; has been added to the &#171;git log&#187; command, allowing the output of &#171;git log&#187; to be combined with the result of executing the &#171;git describe&#187; command. Parameters for &#171;git describe&#187; are specified directly within the specifier (&#171;&#8212;format=%(describe:match=&lt;foo&gt;,exclude=&lt;bar&gt;)&#187;), where you can also include abbreviated tags (&#171;&#8212;format=%(describe:tags=&lt;bool&gt;)&#187;) and configure the number of hexadecimal characters for object identification (&#171;&#8212;format=%(describe:abbrev=&lt;n&gt;)&#187;). For example, to output the last 8 commits whose tags do not have a release candidate label and specify 8-character identifiers, you can use the command:       $ git log -8 &#8212;format=&#8217;%(describe:exclude=*-rc*,abbrev=13)&#8217;     v2.34.1-646-gaf4e5f569bc89     v2.34.1-644-g0330edb239c24     v2.33.1-641-g15f002812f858     v2.34.1-643-g2b95d94b056ab     v2.34.1-642-gb56bd95bbc8f7     v2.34.1-203-gffb9f2980902d     v2.34.1-640-gdf3c41adeb212     v2.34.1-639-g36b65715a4132\n<li class=\"l\"> The user.signingKey setting now supports new key types, not limited to the &#171;ssh-&#187; type and the specification of a full file path to the key. Alternative types are specified using the prefix &#171;key::&#187;, for example, &#171;key::ecdsa-sha2-nistp256&#187; for ECDSA keys.\n<li class=\"l\"> The speed of generating the changelog in &#171;&#8212;histogram&#187; mode has been significantly increased, as well as when using the &#171;&#8212;color-moved-ws&#187; option, which controls the highlighting of spaces in colored diffs.\n<li class=\"l\"> The &#171;git jump&#187; command, used to provide Vim with information about exact transitions to the required position in a file during merge conflict resolution, diff viewing, or search operations, has been enhanced to allow narrowing the scope of merge conflicts. For example, to restrict operations to just the &#171;foo&#187; directory, you can specify &#171;git jump merge &#8212; foo&#187;, and to exclude the &#171;Documentation&#187; directory from processing, use &#171;git jump merge &#8216;:^Documentation'&#187;.\n<li class=\"l\"> Work has been done to standardize the use of the &#171;size_t&#187; type instead of &#171;unsigned long&#187; for values representing object sizes, which allows the use of &#171;clean&#187; and &#171;smudge&#187; filters with files larger than 4 GB on all platforms, including those with the LLP64 data model, in which the &#171;unsigned long&#187; type is limited to 4 bytes.\n<li class=\"l\"> The 'git am' command has been updated with the option '--empty=(stop|drop|keep)', which allows users to choose the behavior for empty emails that do not contain patches when parsing patches from the mailbox. The value 'stop' will terminate the entire patch application operation, 'drop' will skip the empty patch, and 'keep' will create an empty commit.\n<li class=\"l\"> The commands 'git reset', 'git diff', 'git blame', 'git fetch', 'git pull', and 'git ls-files' now support sparse indexes, which improve performance and save space in repositories where partial cloning (sparse-checkout) operations are performed.\n<li class=\"l\"> The command 'git sparse-checkout init' is now deprecated; instead, use 'git sparse-checkout set'.\n<li class=\"l\"> A preliminary implementation of the new 'reftable' backend has been added for storing references, such as branches and tags, in the repository. This new backend utilizes a block storage system developed by the JGit project and is optimized for handling a very large number of references. The backend is not yet integrated with the reference system and is not ready for practical use.\n<li class=\"l\"> The color palette of the 'git grep' command has been aligned with the GNU grep utility.        <\/ul>\n<p>Source: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=56570\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\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.35. 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":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-103093","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\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\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.35.\" \/>\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\/en\/blog\/news\/vypusk-sistemy-upravleniya-ishodnymi-tekstami-git-2-35\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\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.35 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\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.35.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/en\/blog\/news\/vypusk-sistemy-upravleniya-ishodnymi-tekstami-git-2-35\" \/>\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-01-25T13:36:40+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2022-01-25T13:36: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\udd47Release of the Git 2.35 version control system | ProHoster","description":"After two months of development, the release of the distributed version control system Git 2.35 has been published.","canonical_url":"https:\/\/prohoster.info\/en\/blog\/news\/vypusk-sistemy-upravleniya-ishodnymi-tekstami-git-2-35","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"en_US","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.35 | ProHoster","og:description":"\u041f\u043e\u0441\u043b\u0435 \u0434\u0432\u0443\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.35.","og:url":"https:\/\/prohoster.info\/en\/blog\/news\/vypusk-sistemy-upravleniya-ishodnymi-tekstami-git-2-35","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-01-25T13:36:40+00:00","article:modified_time":"2022-01-25T13:36:40+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"103093","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-01-25 13:38:01","updated":"2022-09-30 07:29:34","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/103093","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/comments?post=103093"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/posts\/103093\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/media?parent=103093"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/categories?post=103093"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/en\/wp-json\/wp\/v2\/tags?post=103093"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}