Состоялся выпуск 2.48 распределенной системы управления версиями Git, написанной на языке C и распространяемой по лицензии GNU GPL 2.
Список основных изменений:
- Новая переменная конфигурации
remote.<name>.serverOption
оказывает такое же действие, как если бы опция--serverOption=<value>
была задана из командной строки. - Команда
git rebase --rebase-merges
теперь использует имена ветвей в качестве меток, когда это возможно. - Команды
git notes add
иgit notes append
с новым флагом-e
открывают заметки в$GIT_EDITOR
перед сохранением. - Улучшена документация
git bundle
об использовании--all
при создании пакетов. - Удалена поддержка старых версий libcURL и Perl.
- Улучшена работа
git mergetool
при возникновении ошибки команды. - Команды
git bundle --unbundle
иgit clone
, выполненные для файла пакета, запускаютfsck
для новых объектов с настраиваемыми уровнями проверкиfck
. - Если при выполнении
git fetch $remote
обнаруживается, что отсутствуетrefs/remotes/$remote/HEAD
и на какую ветку указывает другая сторона своимHEAD
,refs/remotes/$remote/HEAD
обновляется, чтобы указывать на неё. - Теперь
git fetch
учитывает настройкиremote.<remote>.followRemoteHEAD
для отслеживанияHEAD
вrefs/remotes/<remote>/HEAD
. - В
git range-diff
добавлена поддержка опции--diff-merges
для сравнения коммитов слияния в сравниваемых диапазонах. - Улучшена подсистема
reftable
. - Добавлена поддержка компиляции с более производительными реализациями алгоритма SHA-1 вместо используемого сейчас алгоритма SHA1DC с детектированием коллизий (
$ make OPENSSL_SHA1_UNSAFE=1
или$ make BLK_SHA1_UNSAFE=1
). - Улучшена совместимость cо стандартом C23 и GCC 15.
- Проведена оптимизация
git describe
. - Добавлена возможность компиляции системой сборки Meson.
- Другие улучшения и исправления ошибок.