After three months of development published Release of a distributed source code management system Git 2.32 . Git is one of the most popular, reliable and high-performance version control systems, providing a flexible means of non-linear design, based on the branch and merging branches. To ensure the integrity of history and resistance to changes in the “rear-number”, implicit hashing of the entire previous story is used in each com., It is also possible to certify digital signatures of the developers of individual tags and commits.
Compared to the previous issue, 617 changes prepared with the participation of 100 developers were adopted, from which 35 took part in the development. Main innovations:
- The “Git Commit” command added option “–Trailer [=]”, which allows you to simplify the attachment to the Commit of your own structured information (trailer) in the key / value format, which can then be processed by the “InterPret-Trailers” command.
- Instead GIT_CONFIG_NOSYSTEM mechanism used to prevent the reading of the total for the whole of the configuration file system, it is proposed to use GIT_CONFIG_SYSTEM mechanism to explicitly specify which file should be loaded system-wide settings, and GIT_CONFIG_GLOBAL option to override linked to individual users settings in $ HOME / .gitconfig. Assigning a variable git_config_system empty value changes the behavior to the equivalent git_config_nosystem.
- When using the second version of the GIT communication protocol when executing “Git Push”, the definition of a common ancestor on the receiving party is implemented, which made it possible to bring the “Git Push” work efficiency to the “Git Fetch” level and exclude the loading of objects in which there is no need.
- Added a simple IPC interface that allows you to create services such as FSMonitor.
- file processing “.gitattributes”, “.gitignore” and “.mailmap”, in case they are symbolic links.
- For transport HTTP Added support for the password caching, successfully used to unlock the certificate.
- In the Git Stash Show command, it is possible to display the unknown part of the temporarily reassened file storage.
- A more advanced repack strategy is proposed by the “Git Repack” command, which allows to reduce resource consumption when repacking.
- in the “Git Commit” command implemented an advanced option “–Fixup” option –
“–Fixup = (reword | amend):”, which offers a choice only change the log message or a message, and the content - The command “git send-email” accounted core.hooksPath installation settings.
- in “Git Format-Patch -V” allowed the use of non-integer meters.
- in “Git Clone” Added option “–reject-shallow”, allowing to prohibit cloning from repositories in Shallow mode (without full change history).
- In the “GitWeb” program, the Email hide mode is added, replacing rows similar to email when displaying.
.
/Media reports.