
2 февраля состоялся официальный релиз Git 2.53 — очередной версии популярной системы управления версиями.
Git заслуженно ценится разработчиками за высокую производительность и эффективные инструменты нелинейного проектирования, основанные на гибком механизме ветвления и слияния. Система обеспечивает надежную защиту истории изменений благодаря неявному хешированию всех данных в каждом коммите, а также возможности использования цифровых подписей для верификации тегов и отдельных правок. Проект распространяется под лицензией GPLv2+.
Текущее обновление стало результатом коллективного труда 70 разработчиков (включая 21 дебютанта), которые суммарно подготовили 466 изменений. Ключевые нововведения релиза:
- Оптимизация репозиториев через geometric repack: Стратегия упаковки
git repack --geometricтеперь доступна для частично клонированных репозиториев, использующих режимpromisor. Система корректно обрабатывает и изолирует.promisorфайлы при выполнении переупаковки. Геометрический метод существенно ускоряет обслуживание «тяжелых» монорепозиториев, избегая ресурсоемкого объединения всех pack-файлов и поддерживая прогрессию размеров, при которой каждый последующий файл как минимум вдвое больше предыдущего. - Улучшения в
git fast-import: Появилась опция--signed-commits=strip-if-invalid. Она позволяет удалять только те цифровые подписи, которые стали невалидными из-за перезаписи истории. Ранее приходилось выбирать между импортом всех подписей или полным их удалением. Нововведение упрощает создание инструментов для переподписывания объектов и сохранения целостности актуальных подписей. - Детальная статистика в
git repo structure: В отчеты добавлена информация о размере всех доступных (reachable) объектов с разбивкой по типам. Данные отображаются в удобном человекочитаемом формате с указанием единиц измерения, раздельно для реального объема данных и дискового пространства, занимаемого репозиторием.
- В
git maintenanceвведена подкомандаis-needed, которая запускает задачи по обслуживанию лишь тогда, когда в них действительно есть необходимость. - Экспериментальная команда
git replayтеперь обновляет ссылки в рамках транзакции по умолчанию, вместо того чтобы просто демонстрировать их целевые значения. - В
git blameдобавлена опция--diff-algorithm=для настройки алгоритма оценки различий между версиями кода. - Для
git repo infoстала доступна опция--all. - В основную ветку разработки интегрирована поддержка символических ссылок в среде Windows, ранее доступная только в составе Git-for-Windows.
Стоит отметить ситуацию с поддержкой языка Rust. Ранее планировалось, что в версии 2.53 сборка компонентов на Rust станет обязательной по умолчанию. Однако разработчики ограничились лишь техническими улучшениями (включая возможность сборки без использования GNU sed). В текущем релизе сборка с Rust при использовании Makefile остается отключенной (требуется флаг WITH_RUST), а в Meson активируется лишь при обнаружении компилятора rustc. Внедрение Rust в качестве обязательного компонента сборочного процесса ожидается в Git 3.0.







комментарии закрыты.