Epic Games опубликовала систему управления версиями Lore

2 мин
Epic Games опубликовала систему управления версиями Lore

Epic Games представила исходник централизованной системы управления версиями Lore. Ранее эта система поставлялась в составе инструментария Unreal Editor for Fortnite под именем Unreal Revision Control. 

Lore может использоваться при разработке проектов, сочетающих исходный исходник с весьма большими нетекстовыми файлами, например, для разработки компьютерных игр, при создании которых приходится совместно работать над текстурами, 3D-моделями и звуком. Совместная работа одновременно организована на уровне выставления эксклюзивной блокировки, чтобы источник не могли редактировать одновременно несколько участников. 

Исходник проекта написан на языке Rust и распространяется под лицензией MIT.

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

Lore предлагает подсистему хранения данных и управления версиями, отвечающую за разработка ревизий, веток и операции слияния. Первая формируется из постоянного (immutable) хранилища контента с адресацией по хэшам и хранилища в формате ключ/значение для меняющихся метаданных. Для хранения данных на централизованном сервере и обеспечения отказоустойчивости можно использовать бэкенды, например, для постоянного хранения можно использовать AWS S3, а для метаданных подойдёт DynamoDB.

Формат Merkle Tree отражает состояние репозитория, а каждая ветка верифицирует все нижележащие и узлы за счёт древовидному хешированию. Данные в репозитории адресуются по хэшам содержимого. Хэш каждой ревизии охватывает связанное с ней состояние, хэши родительских ревизий и хэши данных. Большие файлы хранятся разделёнными на фрагменты.

Как и другие системы управления версиями, Lore предлагает разные возможности, в том числе коммиты, staging-черновики, разработка веток и оценку изменений. Кроме того, опции включают разграничение доступа участников, разрешение конфликтов, дедупликацию на уровне фрагментов, функция работы с неполной копией рабочего дерева, кэширование хранимых данных, легковесные операции создания веток и быстрое переключение между ними.

Накануне Epic Games выпустила Unreal Engine 5.8 — апдейт игрового движка, в котором сделали акцент на создании больших открытых миров, ускорении пайплайнов анимации, улучшении рендеринга и интеграции AI-инструментов. UE 5.8 станет последним крупным обновлением ветки Unreal Engine 5. После этого разработчики Epic Games продолжат поддерживать ядро исправлениями багов и патчами безопасности, а главный фокус сместят на Unreal Engine 6.

Читают сейчас

CircuitPython Turbo получил поддержку предварительной компиляции и режима Viper

12 минут назад

CircuitPython Turbo получил поддержку предварительной компиляции и режима Viper

Вы, вероятно, не раз встречались в интернете с утверждением о том, что Python — это свежий BASIC, который стал первым языком программирования для целого поколения разработчиков. Его главное преимущест

Зачем разработчику погружаться в продуктовый контекст и как в этом помогает ИИ?

13 минут назад

Зачем разработчику погружаться в продуктовый контекст и как в этом помогает ИИ?

Порассуждали на эту тему в гостях у подкаста Moscow Python — ребята предложили вместе записать начальный оффлайн‑выпуск после долгого перерыва. Поговорили о том, где граница между ролями продакта и ра

В Москве прошла открытая стратегическая сессия для диджитал‑рынка

26 минут назад

В Москве прошла открытая стратегическая сессия для диджитал‑рынка

11 сентября в офисе AGIMA прошла открытая стратегическая сессия для участников диджитал-рынка — первая офлайн-встреча нового сезона 2026. Десять владельцев агентств и сервисных компаний наряду с двумя

30 минут назад

«Диасофт» внедрил ИИ‑функции и интеграцию с 1С в «Каталог метаданных»

Организация «Диасофт» расширила функциональность продукта «Каталог метаданных», входящего в состав решения «Фабрика данных» (Digital Q.DataFactory). В обновленной версии появились автоматическое запол

Бывший разработчик ChatGPT показал весьма быструю LLM для задач классификации

34 минуты назад

Бывший разработчик ChatGPT показал весьма быструю LLM для задач классификации

Человеческий язык удобен для разговора с пользователем, но внутри приложения за эту универсальность приходится платить временем. Когда одна LLM передаёт результат иной модели, ответ всё равно генериру