Вышла Git 2.33 с новенькими технологиями переупаковки и слияния — анонсы на Tproger

Поделиться

Вышла новенькая версия распределённой системы управления версиями Git 2.33. Предшествующая версия Git 2.31 возникла в марте 2021 года. 

Геометрическая переупаковка

Git разработал новейшую технологию переупаковки — «геометрическую».

Мысль состоит в том, чтоб найти маленькой набор пакетов, которые можно соединить вкупе так, чтоб оставшиеся пакеты создавали геометрическую прогрессию, основанную на размере объектов.

Если самый небольшой пакет содержит N объектов, то последующий по величине пакет будет содержать не наименее 2N объектов, и так дальше.

Для чего необходимо? Исторически сложилось так, что загруженные репозитории требуют, чтоб всё их содержимое было упаковано в один большой пакет. Это соединено с тем, что битовые карты, которые весьма важны для оптимизации производительности Git, могут обрисовывать объекты лишь в одном пакете. Геометрическая упаковка избавляет это ограничение. 

Тестировщик (QA Engineer)

Школа Неопасных Инвестиций FIN-RA, Удалённо, От 70 000 до 130 000 ₽

tproger.ru

Вакансии на tproger.ru

Сравните размер пакетов до и опосля геометрической переупаковки при помощи этого скрипта:

$ packsizes() {
find .git/objects/pack -type f -name ‘*.pack’ |
while read pack; do
printf «%7d %sn»
«$(git show-index < ${pack%.pack}.idx | wc -l)» «$pack»
done | sort -rn
}
$ packsizes # before
$ git repack —geometric=2 -d
$ packsizes # after

merge-out

В Git также возникла новенькая разработка слияния — merge-out. 

Она работает по тому же принципу, что и merge-recursive, но избавляет несколько давнешних заморочек, связанных с производительностью.

Сейчас огромное слияние происходит резвее в 500 раз. А серия таковых слияний — в 9000 раз, так как merge-out умеет хранить в кэше и повторно употреблять вычисления, нужные для слияния. 

Как испытать

Установить Git 2.33 можно через перечень рассылки ядра. 

Подробнее про остальные маленькие конфигурации можно почитать там же либо в блоге GitHub.

Источник: Блог GitHub

Источник: tproger.ru

Поделиться с друзьями:
Андройд IT
Добавить комментарий