Features
Built for Unreal,
end to end.
uVersion covers the whole cycle of an Unreal studio: from binary storage to the activity dashboard, by way of pre-checkin validation and fine-grained roles. Here is what is in the box.
01
Workflow
Lock-based, no merge surprises. The artist always knows who is touching what.
Exclusive locking
Checkout required before editing. No more "I spent 2 hours on the same .uasset as you". Cross-workspace: see who holds the lock even in a distributed team.
Smart auto-checkout
The Unreal plugin locks automatically the moment you modify a writable asset. No more double-clicking in source control.
Local changelists
Group your checked-out files into several independent commits (Perforce-style). Persisted per workspace.
Lock release requests
If Marie locked an asset two days ago and Alex needs it, he can send a release request that notifies Marie in-app.
Multi-account, multi-server
A freelancer working for several studios? Switch between accounts and servers in one click, and keep two Unreal editors open on different accounts in parallel.
Sync that cleans up
A full sync removes locally the files deleted or renamed on the server (Perforce parity), without ever touching a file you have modified or locked.
02
Unreal plugin
A native Source Control Provider, not an external wrapper.
Source Control Provider
Connect → uVersion. All the standard UE5 workflows: checkout, checkin, revert, history from the Content Browser.
Visual Blueprint diff
Compare Blueprints between revisions right inside UE. Temp files in Saved/Diff/, works with any commit.
Redirector cleanup
Before every checkin, the plugin fixes up redirectors, saves the modified packages, and includes it all in the commit. No more "Redirector still present" at build time.
Automatic reconcile
When the project opens, writable but unlocked .uasset files are auto-checked-out. Scans Content/ + Plugins/*/Content/ included.
03
Validation
10 built-in rules, configurable per project. Errors block, warnings warn.
Blueprint compilation
The headless Kismet compiler checks that every Blueprint in the commit compiles. Error → checkin blocked.
Naming convention
Prefixes per asset type (BP_, T_, M_, SM_…). Configurable regex.
Texture size
Warns or blocks if a texture exceeds a defined resolution, or is not a power of 2.
Material complexity
Counts shader instructions. Above a threshold, warning or error.
Import settings
sRGB textures on normal maps, compression on UI textures, and so on. Everything is configurable.
Missing dependencies
Detects assets referenced by a committed Blueprint but absent from the commit. No more "package not found" in CI.
Dry-run checkin
Simulate the checkin without submitting to see in advance what would pass or fail. Handy before a big submit.
Per-project policy
Enable or disable each rule and adjust thresholds and severity (error / warning) per project via .uversion/rules.json, versioned with the repo.
04
Collaboration
Comments, reviews, watchlist, notifications. Everything to stay aligned.
Threaded comments
Comments per commit or per file, in a tree. Markdown supported.
Reviews
Approve / Changes Requested / Pending. Path gate to require lead approval before merge on certain folders.
Watchlist
Watch a file or a glob (Content/Characters/**). Notification as soon as a commit touches it.
In-app notifications
A bell in the desktop client. Direct navigation to the commit, the modification request, or the file involved.
Modification requests
Ask a teammate to modify an asset, with or without a target file. Each request becomes a card on the Production board (section 05).
Webhooks
Discord, Slack, Teams, or a custom format. Notifications for commits, locks, modifications. Scheduler for periodic summaries.
05
Production
Production management, inside the VCS. A kanban board where cards link to real assets and commits.
Kanban board
Columns configurable by the lead (To Do / In Progress / Review / Done, or Blockout / WIP / Review / Final for art). Drag & drop, priorities, labels, multiple assignees, due dates, comments.
Cards linked to content
The real differentiator vs Trello or Jira: link assets and commits to a card. From a file, right-click → "Add to a task". Production lives where the files are.
Auto review on checkin
When a linked asset is committed, the commit attaches to the card and it moves to the Review column. Zero manual board updates.
My tasks, all projects
Your assigned tasks aggregated across every repo, in one place. One click to jump to the board of the relevant project.
Unified requests
Modification and lock-release requests are cards on the board. One single flow, no separate "Requests" silo.
Attachments & covers
Attach reference images to a card, with a cover image. Content-addressed storage, deduplicated like the rest.
06
Administration
A panel built into the client. 8 roles, glob permissions, full audit.
8 configurable roles
admin, lead, artist, programmer, qa, user, viewer, playtester. Granular capabilities (force_unlock, approve_changes, manage_rules…).
Glob permissions
Read/Write/Deny on patterns (Content/Audio/**). Priority DESC, default Write. Admin bypass.
Audit log
Every sensitive action: login, force unlock, obliterate, role change, permission edits. Exportable.
Lead dashboard
Per-user KPIs over 7 / 30 / 90 days. Spot who is blocked and who is on which feature.
Storage metrics
Dedup ratio, growth, top files by size. Configurable garbage collection (retention + min revisions).
Obliteration
Permanently remove a file from history (a confidential asset added by mistake). Batches of 500, progress events, targeted GC of orphan chunks.
On your infra, no public CA
Host the server yourself. Self-signed TLS + TOFU pinning (trust-on-first-use): the client remembers the server fingerprint on first contact, with no public certificate authority to buy.
07
Distribution & Builds
Share content across projects, publish internal playtest builds.
Cross-project distribution
A source → target link with path patterns (Plugins/uVersion, Content/Shared/**). Publish copies the files, chunks are shared (deduplication).
Internal playtesting
Publish a packaged build from the desktop client. playtester roles download from the Games Page. Versions, configs (DebugGame/Development/Shipping), platforms.
Built-in Package Game
RunUAT BuildCookRun from the client. Auto-detection of the Engine Path via EngineAssociation. Cancel build with a clean shutdown (taskkill /T on Windows).
Client auto-update
Tauri updater plugin, RSA-signed bundles, a latest.json manifest served by the server. Transparent updates for the team.
Try it
The rest shows
in the using.
The best test is your own Unreal project.