Выпуск системы управления исходными текстами Git 2.38
Представлен выпуск распределенной системы управления исходными текстами Git 2.38. Git является одной из самых популярных, надёжных и высокопроизводительных систем управления версиями, предоставляющей гибкие средства нелинейной разработки, базирующиеся на ответвлении и слиянии веток. Для обеспечения целостности истории и устойчивости к изменениям «задним числом» используются неявное хеширование всей предыдущей истории в каждом коммите, также возможно удостоверение цифровыми подписями разработчиков отдельных тегов и коммитов.
По сравнению с прошлым выпуском в новую версию принято 699 изменений, подготовленных при участии 92 разработчиков, из которых 24 впервые приняли участие в разработке. Основные новшества:
- В основной состав включена утилита «scalar», разработанная компанией Microsoft для управления крупными репозиториями. Утилита изначально была написана на языке C#, но в git включён переделанный вариант на языке Си.
Новая утилита отличается от команды git включением по умолчанию дополнительных возможностей и настроек, влияющих на производительность при работе с очень крупными репозиториями. Например, при использовании
scalar применяется:
Частичное клонирование для работы с неполной копией репозитория.
- Встроенный механизм отслеживания изменений в файловой системе (FSMonitor), позволяющий обойтись без перебора всего рабочего каталога.
- Индексы, охватывающие объекты в разных pack-файлах (multi-pack).
Файлы commit-graph с индексом графа коммитов, применяемым для оптимизации доступа к информации о коммитах.
- Фоновые периодические работы для поддержания оптимальной структуры репозитория в фоновом режиме, не блокируя интерактивный сеанс (раз в час выполняется работа по упреждающей загрузке свежих объектов из удалённого репозитория и обновлению файла с графом коммитов, а каждую ночь запускается процесс упаковки репозитория).
- Режим «sparseCheckoutCone», ограничивающий допустимые шаблоны при частичном клонировании.
Источник: http://www.opennet.ru/opennews/art.shtml? num=57868
© OpenNet