Разработчикам
Всё можно скриптовать.
Всё можно интегрировать.
uVersion предоставляет полноценный CLI, документированный REST API и нативные плагины для IDE, которые используют в геймдеве. Если вы скриптуете свой конвейер, мы встроимся в него.
CLI uversion
Бинарник uversion.exe (~6 МБ) покрывает все операции VCS и выдаёт вывод --json, который можно разобрать из любого скрипта.
Учётные данные разделяются с десктоп-клиентом через системный keyring, без повторного входа. Chunking CDC, сжатие zstd и отслеживание .uversionignore идентичны десктоп-клиенту.
Плагины для редакторов
Нативная интеграция в IDE, которые используют для разработки на Unreal.
Plugin Unreal Engine
ДоступноSource Control Provider, встроенный в редактор. UE 5.6 и выше. Поставляется в виде предкомпилированного бинарника: десктоп-клиент сам устанавливает его в проект и сообщает об обновлениях, по версии Unreal и по платформе. Никаких ZIP-архивов распаковывать не нужно.
- Checkout / Checkin / Revert из Content Browser
- Встроенный визуальный diff Blueprint
- Проверка перед checkin с 10 встроенными правилами
- Автоматический Checkout при изменении
- Автоматический вход через Windows Credential Manager
- Reconcile при запуске (Content/ + Plugins/*/Content/)
Plugin Rider
ДоступноVCS-интеграция для JetBrains Rider, эталонной IDE для разработки игр на Unreal.
- Refresh / Update / Checkin / Revert через меню VCS
- Внутри делегирует CLI
uversion - Фильтрует по исходным расширениям (.cpp, .h, .cs, .uproject)
- Общая аутентификация с десктоп-клиентом
Plugin Visual Studio
Coming soonVCS-интеграция в Visual Studio 2022+ для C++-разработчиков, которые остаются в IDE от Microsoft. Те же функции, что и у плагина Rider, доступны в меню Team Explorer.
Extension VS Code
Coming soonРасширение для VS Code для написания скриптов, редактирования конфигов и проектной документации, не покидая редактор. Иконки статуса в проводнике, checkout / checkin через палитру команд.
API REST
Сервер uVersion предоставляет JSON HTTP API с аутентификацией по JWT. Все операции клиента (auth, repos, files, locks, comments, builds) доступны через REST.
POST /api/auth/login: получить JWT на 30 днейPOST /api/auth/refresh: обновить без повторного ввода пароляGET /api/repositories: список доступных репозиториевPOST /api/files/{repo_id}/upload-chunks: чанкованная загрузка бинарных данныхPOST /api/locks/{repo_id}/acquire: заблокировать файлыPOST /api/builds/{repo_id}/upload: опубликовать плейтест-билд
curl -X GET https://team.uversion.io/api/repositories \ -H "Authorization: Bearer $UV_TOKEN"
{
"success": true,
"data": [
{
"id": 12,
"name": "hero-rpg",
"owner": "acme",
"current_revision": "7f3a9b1...",
"file_count": 8432,
"size_bytes": 14211938405
}
]
} CI/CD
CLI uversion создан для автоматизированных конвейеров. Режим --json, стандартные коды возврата, долгоживущий JWT (30 дней), обновляемый без повторного ввода пароля.
name: Nightly build
on:
schedule: [{ cron: '0 2 * * *' }]
jobs:
build:
runs-on: [self-hosted, unreal]
steps:
- name: Login + sync from uVersion
env:
UV_SERVER: ${{ secrets.UV_SERVER }}
UV_USER: ${{ secrets.UV_USER }}
UV_PASSWORD: ${{ secrets.UV_PASSWORD }}
run: |
uversion login "$UV_SERVER" --username "$UV_USER" --password "$UV_PASSWORD" --json
uversion clone hero-rpg ./project --json
uversion sync --json
- name: Build packaged client
run: |
./project/Engine/Build/BatchFiles/RunUAT.bat \
BuildCookRun -project=./project/HeroRPG.uproject \
-clientconfig=Development -platform=Win64 Надёжно и быстро
Нативный серверный бинарник, лёгкий десктоп-клиент (несколько МБ, мгновенный запуск), массово распараллеленные загрузка и выгрузка для больших файлов. Аутентификация по JWT, пароли, хешированные по современным стандартам, полный аудит чувствительных действий. Сервер в вашей инфраструктуре с самоподписанным TLS: клиент закрепляет отпечаток при первом контакте (TOFU), uversion trust для скриптования доверия в CI.