On this page
Version Control
Diversion for Unreal Engine
Hosted version control with an Unreal Editor plugin and file locks.
It's ideal for small teams that want an editor plugin and file locks without running a server. Enforced locks need the Studio or Enterprise plan.
What it is
Diversion is hosted version control. Repositories live in Diversion's managed cloud, and the Enterprise plan adds private-cloud, on-premises, and hybrid deployment. Desktop, web, command-line, and engine clients connect to the shared repository.
The managed service handles repository hosting. Before moving a project, test the Unreal plugin with a map, Blueprint, and representative source art. Include a conflicting edit and a branch switch with uncommitted work.
With Unreal Engine
The Unreal plugin shows asset changes, submits work, and opens Blueprint diffs. Soft locks warn about concurrent edits. Studio and Enterprise plans add hard locks that reject conflicting commits.
Where it fits
Strengths
- The managed cloud service removes server setup and maintenance.
- The Unreal plugin exposes source control inside the editor.
- Desktop and command-line clients support artists and developers with different working styles.
Tradeoffs
- Hard locks and auto-lock patterns require Studio or Enterprise.
- The Unreal Engine 5.8 plugin supports Windows and macOS, but not Linux.
- The service and clients remain proprietary, including private-cloud and on-premises deployments.
Choose it when
- A small team wants hosted version control with an Unreal-facing client.
- The studio has no Perforce administrator and accepts a managed service dependency.
- A real project trial proves that asset size, sync speed, and plugin support fit.
Look elsewhere when
- The required hard-lock workflow is not available on the chosen plan.
- The studio cannot accept a proprietary vendor dependency, including for private-cloud or on-premises deployment.
- An established pipeline depends on integrations available only for Git or Perforce.
How it works
- Repository hosting
- Diversion hosts repositories in its managed cloud. Private-cloud, on-premises, and hybrid deployment require the Enterprise plan. Every deployment still runs Diversion's proprietary service and clients.712
- Unreal Editor plugin
- The plugin installs through Fab and Epic Games Launcher, with source packages available for listed engine versions. It connects through Unreal's source control menu and lets artists review and submit asset changes in the editor.12
- Soft and hard locks
- Soft locks warn that another person is editing a file. Hard locks let another user open and save a local copy, but Diversion rejects the conflicting commit. Auto-lock patterns can lock matching assets when they are saved in Unreal Editor.23
- Branches, shelves, and workspaces
- The CLI can check out a branch, commit, or tag. When switching, it can carry changes, shelve them, discard them, or apply an existing shelf. A workspace belongs to one machine. Its uncommitted work syncs to the cloud but stays private, and each computer needs its own workspace.68
- Ignore rules and selective sync
.dvignorecontrols which untracked paths stay out of commits, while selective sync limits which tracked folders a workspace downloads. Neither feature removes already tracked content from repository history.45- Storage accounting
- Each committed file version counts toward storage. Deleting a file in a later commit leaves its earlier versions in history until an administrator obliterates that history or, on Studio and Enterprise, applies a revision limit. New and changed files synced from a workspace also count before commit.9
In production
- 01
Build a representative editor trial
Install the plugin build for the project's Unreal Engine version, then create a trial repository with code, maps, Blueprints, source art, and several large assets. Measure initial upload, fresh checkout, normal sync, and recovery on the same connections the team uses day to day.
- 02
Set the locking policy
On plans with soft locks, agree when a warning means work needs to stop. Studio and Enterprise add hard locks and auto-lock patterns. Test a shared
.uassetwith two accounts and decide who can release abandoned locks.23 - 03
Exercise work outside the editor
Use the desktop client, WebUI, or CLI for branch changes, shelves, repository inspection, and recovery. Linux has no desktop app, so its workflow uses the CLI and WebUI. Artists need a documented route when the editor cannot open or a plugin update lags behind an engine update.10
- 04
Prove a clean checkout and recovery
Create a new workspace without cached assets, sync the intended folders, and open or build the project. Recover an abandoned lock and shelved change, then record the service, storage, and support limits that affect the team.
Best practices
- Test the exact engine and operating system
- Diversion lists plugin builds for Unreal Engine 5.3 through 5.8. The 5.8 build supports Windows and macOS only. Test the matching build on each workstation type before an engine upgrade; Linux users also need the CLI or WebUI instead of the desktop app.1210
- Review the generated ignore policy
- Inspect the repository's
.dvignorebefore the first commit and confirm that DerivedDataCache, Intermediate, Saved, and local build output stay out. Test nested rules when the repository also carries.gitignorefiles. - Auto-lock non-mergeable formats
- On a plan with hard locks, configure repository patterns for
.uasset,.umap, and any source formats that require one editor. Limit auto-release to branches where the accepted change lands. - Test save, commit, and force-unlock separately
- Have one user lock a package, let another save a conflicting local edit, and confirm that the second commit is blocked. Before an administrator force-unlocks abandoned work, record which uncommitted edits still exist only in the previous owner's workspace.38
- Use selective sync by role
- Give workspaces only the repository folders they need, then test switching and recovery with unsynced paths. Selective sync changes local downloads; it does not change what the repository tracks.
Gotchas
- Hard locks depend on the plan
- Studio and Enterprise include hard locks. Other plans provide soft-lock warnings without commit enforcement. Lock, Force Unlock, and auto-lock workflows depend on that plan access. Hard locks inside Unreal Editor also need plugin 2.0.31 or later.311
- A hard lock does not make the local file read-only
- Another user can open and save the asset. Diversion blocks the conflicting commit, so the losing local edit still needs an explicit recovery or discard decision.3
- Automated saves do not show lock prompts
- Autosaves, commandlets, scripted Python or Blueprint saves, merge saves, and Play In Editor saves proceed without the normal dialog. Commit enforcement remains the final protection.3
- Ignore rules do not remove tracked files
- Adding an ignore pattern leaves committed paths tracked. Removing them requires a committed deletion, and collaborators can lose their local copies when they sync unless the change is coordinated.4
- A personal warning preference can become team config
- Disabling soft-lock confirmations changes project configuration. Committing that setting can turn off the warning for everyone, so decide whether it is a team policy or a local-only preference.2
- Deleting a file does not erase its history
- A committed deletion removes the file from the current tree but leaves older versions counted in repository history. Reclaiming that storage requires an obliterate operation, branch or repository deletion, or a revision limit on Studio or Enterprise.9
Adoption checklist
- Confirm plugin support for the exact Unreal Engine version in use.
- Measure the largest normal asset revision on each office and remote connection.
- Test branch switching with dirty work and shelved changes.
- Write a team policy for soft locks, hard locks, and abandoned edits.
- Test import and recovery before moving an established project.
- Review account roles, service limits, billing, and support response expectations.
Related guides
- Perforce P4Centralized version control built around workspaces, changelists, and exclusive checkout.
- Git with Git LFSGit version control with separate storage for large files and optional file locking.
- Unity Version ControlVersion control formerly called Plastic SCM, with Smart Locks, a partial-workspace client for artists, and a built-in Unreal provider.
- LoreEpic Games' open-source version control for large binary repositories, currently in pre-stable release.
Sources
Official sources checked .
- 1Unreal Engine Diversion guidedev.epicgames.com
- 2Diversion Unreal plugin guidedocs.diversion.dev
- 3Diversion hard locksdocs.diversion.dev
- 4Diversion ignore rulesdocs.diversion.dev
- 5Diversion selective syncdocs.diversion.dev
- 6Diversion checkout referencedocs.diversion.dev
- 7Diversion deployment optionsdiversion.dev
- 8Diversion repositories, branches, and workspacesdocs.diversion.dev
- 9Diversion storagedocs.diversion.dev
- 10Diversion quickstartdocs.diversion.dev
- 11Diversion changelogdocs.diversion.dev
- 12Diversion pricingdiversion.dev
Unreal Directive is free and ad-free.
If it saved you time, you can help keep it that way.

