License & Deployment Mix: 10 tools – 7 OSS, 3 proprietary (Perforce Helix Core, Unity Version Control, and the original SCCS); Perforce and Unity VC also ship a vendor-hosted edition. Two entries (SCCS, CVS) are historic, included for lineage context.

What Is a Version Control System?

A version control system (VCS) is the engine that records the history of a project’s files: it stores every revision, lets contributors branch and merge work, and reconstructs any past state on demand. The VCS defines the data model (how revisions, trees, and content are stored), the history model (linear, DAG, immutable chain), and the collaboration model (centralized server-of-record vs. distributed peer clones).

This is the layer beneath the forge. git the program is a VCS; GitHub and Gitea are hosting platforms that wrap it. The two solve different problems and are evaluated in different categories.

The information on these pages was researched by a combination of human review and large language models. To suggest an addition or correction, please contact us. Prepared by Rhodium Systems Inc., author of the ResorsIT platform — a unified IT operations management platform for IT teams and MSPs that integrates a curated suite of open-source, commercial, and SaaS applications into a single system with shared identity, single sign-on, access control, and a common audit trail. Use this catalogue only as a starting point for your own research, and review any tool carefully against your own requirements before relying on it. Catalogue data version 2026.197.

Comparison

This category covers the VCS engines – the tools that define the repository format and the core commit/branch/merge semantics – as distinct from the Git hosting platforms in Git Servers & Repo Management.

The centralized, binary-asset systems (Lore, Perforce, Unity Version Control) matter only where a game or media asset pipeline is in use. Lore – Epic Games’ new MIT-licensed, content-addressed VCS announced June 2026 – is the reason this category exists: it is a peer to Git/Perforce, not a Git host.


Historic Predecessors

Two systems are carried for historical context only and are kept out of the axis tables below (they predate the concerns those tables measure – large binaries, SSO, monitoring). The lineage runs SCCS -> RCS -> CVS -> Subversion -> Git/Mercurial, with Perforce/Unity VC/Lore as the centralized binary-asset branch.

ToolYearOriginModelStorageConcurrencyWhy superseded
SCCS1973Bell Labs (Rochkind)Per-file, localInterleaved deltas (“weave”) in an s-filePessimistic locking (get -e)Per-file only; lock-serialized; no project commit
CVS1986/90Grune; Berliner (over RCS)Centralized, per-fileRCS ,v files in a central repoOptimistic copy-modify-mergeNo atomic commits; no rename tracking; per-file, not changeset

The realistic reason to touch either today is a legacy migration into Git (cvs2git, or lifting old SCCS/RCS history).


Model & Architecture

ToolTopologyData ModelHistory Model
LoreCentralizedContent-addressed, chunked; Merkle treesImmutable, cryptographically-signed revision chain
GitDistributedContent-addressed object store (blobs/trees/commits)Commit DAG; rewritable
MercurialDistributedRevlog (per-file delta logs)Changeset DAG; mostly immutable (phases)
SubversionCentralizedPath/tree store with per-commit revisionsLinear global revision numbers
Perforce Helix CoreCentralizedDepot of file revisions; changelistsLinear per-depot changelist numbers
Unity Version ControlCentralized + distributedChangeset + branch objectsChangeset tree; branch-per-task
JujutsuDistributedPluggable backend (Git default) + operation logChange DAG with first-class conflicts; op-log undo
FossilDistributedSQLite-backed blob store with delta compressionCommit DAG; autosync

Large Binary Asset Handling

The decisive axis for games and entertainment workloads.

ToolNative Large-Binary SupportMechanismFile LockingPartial / Lazy Checkout
LoreExcellent (by design)Chunked content-addressed store, fragment dedup, sparse hydrationYes (centralized)Yes (on-demand)
GitPoor (needs Git LFS)LFS pointer files + external storeLFS file lockingPartial clone / sparse-checkout (add-on)
MercurialModeratelargefiles / lfs extensionNo nativeNarrow clone (extension)
SubversionGoodStores binaries directly; no full local historyYes (svn lock)Yes (sparse / path checkout)
Perforce Helix CoreExcellent (industry standard)Server-side revisions; streamsYes (exclusive open)Yes (sync only what you need)
Unity Version ControlExcellentBinary-aware; Gluon for artistsYes (exclusive locks)Yes (partial / lazy)
JujutsuPoor (inherits Git/LFS)Git backend + LFSVia LFSVia Git backend
FossilLimitedBlobs in SQLite; practical size limitsNo nativeNo

Branching, Merging & Workflow

ToolBranch CostMerge EngineHistory RewritingNotable
LoreLightweight, fast switchServer-assistedImmutable chainNo network for local edit/commit/branch
GitCheapStrong 3-way / recursiveYes (rebase, amend)The de-facto baseline
MercurialCheap (bookmarks) + named branchesStrongLimited (phases, evolve)Named branches are permanent
SubversionDirectory copyHistorically weak; mergeinfoNoCentralized; merges across server
Perforce Helix CoreStreams + per-file branchesGoodNoStream depots model release lines
Unity Version ControlCheap; branch-per-taskStrong visual merge toolLimitedArtist + developer workflows
JujutsuAnonymous, automaticConflicts are first-class objectsYes (rebase-centric, op-log undo)No staging area; everything is a commit
FossilBranch = tagGoodDiscouraged (autosync)“Don’t rewrite history” philosophy

Access Control & Authentication

With Authentik as the identity provider, OIDC is preferred. Most VCS engines have no auth layer of their own – authentication is delegated to the transport (SSH/HTTPS), to a server front-end, or to a hosting forge. The binary-asset servers are the exception.

ToolOIDCSAMLLDAPWhere Auth LivesAuthentik Notes
LoreNoNoNoBuilt-in server access controlNo external IdP at launch (June 2026)
Gitn/an/an/aTransport (SSH/HTTPS) + forgeSSO is a property of the forge, not Git
Mercurialn/an/avia front-endhgweb behind Apache/nginxLDAP/SSO via the web server, not hg
Subversionn/avia front-endvia front-endApache (mod_dav_svn) or svnserve/SASLApache can delegate to LDAP/Kerberos/SAML
Perforce Helix CorePaidPaidNativeHelix Authentication ServiceHAS bridges SAML/OIDC -> Authentik possible
Unity Version ControlPaidPaidNativeUnity ID (cloud) / LDAP (on-prem)SAML on cloud; AD/LDAP on-prem
Jujutsun/an/an/aGit remote transportInherits the Git remote’s auth
FossilNoNoNoBuilt-in user/role table + web loginNo external IdP integration

Hosting & Ecosystem

ToolForges / HostingCI IntegrationIDE Support
LoreNone yet (CLI + full-surface API)Via API / hooksEarly; SDKs in 6 languages
GitGitHub, GitLab, Gitea, Forgejo, Bitbucket, …UniversalUniversal
MercurialHeptapod, SourceHut, self-hosted hgwebMost CI supports hgGood (TortoiseHg, IDE plugins)
SubversionVisualSVN, Apache, legacy forgesMost CI supports svnGood (TortoiseSVN, IDE plugins)
Perforce Helix CoreHelix Swarm (review), P4 ecosystemNative plugins (Jenkins, etc.)Strong (Unreal, game engines)
Unity Version ControlUnity DevOps / Unity DashboardUnity Cloud Build, genericUnity Editor, Visual Studio, Gluon
JujutsuUses any Git remoteVia Git backendEditor support emerging
FossilSelf-hosted (built-in UI); single binaryMinimalCLI-first

Deployment & Licensing

ToolLicenseLanguageTopologyDeploymentPricing
LoreMITRustCentralized serverSelf-host (native)Free (OSS)
GitGPL-2.0-onlyCDistributed clientNative / packageFree (OSS)
MercurialGPL-2.0-or-laterPython + Rust (core)Distributed clientNative / packageFree (OSS)
SubversionApache-2.0CCentralized client/serverNative / packageFree (OSS)
Perforce Helix CoreProprietaryC/C++Centralized serverNative / Docker / cloudFree <=5 users / 20 workspaces; then per-user
Unity Version ControlProprietaryC#Centralized + distributedCloud / on-premFree tier (3 users / 5 GB); then per-user + storage
JujutsuApache-2.0RustDistributed clientNative / packageFree (OSS)
FossilBSD-2-ClauseCDistributed (single binary)Native / packageFree (OSS)

Scale & Target Workload

ToolPractical Scale CeilingSweet Spot
LoreMulti-TB binary game repos (Epic scale)Games / entertainment, code + huge assets
GitLarge code repos; binaries need LFS + partial cloneGeneral software development
MercurialVery large monorepos (Meta-scale)Large code monorepos
SubversionLarge centralized repos; single-server bottleneckCentralized enterprise / legacy
Perforce Helix CoreThousands of users, TB-scale depotsAAA games, film/VFX, hardware
Unity Version ControlLarge game teamsUnity / game studios, mixed dev+artist
JujutsuScales with its Git backendPower users wanting better Git ergonomics
FossilSmall-to-mid projectsSelf-contained small-team projects (e.g. SQLite)

Monitoring Integration

Server-based systems expose operational telemetry; pure client engines do not – their operational visibility comes from the forge or server they push to.

ToolServer ComponentMetrics / LogsMonitoring Fit
LoreYes (service-backed)Server logs; metrics TBD (new)Via the Lore server host
GitNo (client)N/A at engine levelObserve at the forge
Mercurialhgweb (optional)Web-server logsVia Apache/nginx front-end
SubversionApache / svnserveApache access/error logsVia the front-end
Perforce Helix Corep4d serverp4 monitor, structured logs, metricsScrape p4d host; Fluent Bit on logs
Unity Version ControlCloud or on-prem serverServer logs (on-prem)On-prem server host only
JujutsuNo (client)N/AObserve at the Git remote
FossilBuilt-in server (optional)Built-in logs / web accessVia the Fossil server host

Tools

10 tools.

Apache Subversion

Apache Subversion (SVN) is a centralized version control system, long the enterprise standard before Git; path-based access control, atomic commits, and global revision numbers.

License: Apache-2.0 (OSS) · Kind: service · Deploy: native, package · SSO: none · Tags: vcs, centralized, cvcs

Website · Source

CVS

CVS (Concurrent Versions System) is a centralized version control system built atop RCS, dominant in 1990s-2000s open source; added concurrent copy-modify-merge over a central repository.

License: GPL-2.0-or-later (OSS) · Kind: service · Deploy: native, package · SSO: none · Tags: vcs, historic, centralized, cvcs

Website · Source

Fossil

Fossil is a self-contained distributed version control system by the SQLite project, bundling VCS, bug tracking, wiki, forum, and a web UI in a single executable.

License: BSD-2-Clause (OSS) · Kind: hybrid · Deploy: native, package · SSO: none · Tags: vcs, distributed, dvcs, self-contained

Website · Source

Git

Git is the dominant distributed version control system, created by Linus Torvalds in 2005 for Linux kernel development; snapshot-based with a content-addressed object store.

License: GPL-2.0-only (OSS) · Kind: cli · Deploy: native, package · SSO: none · Tags: vcs, distributed, dvcs, content-addressed

Website · Source

Jujutsu

Jujutsu (jj) is a Git-compatible distributed version control system with a different working-copy and change model, originally developed at Google; pluggable storage backends.

License: Apache-2.0 (OSS) · Kind: cli · Deploy: native, package · SSO: none · Tags: vcs, distributed, dvcs, git-compatible

Website · Source

Lore

Lore is Epic Games’ open-source, centralized, content-addressed version control system that models repository state as Merkle trees, built for code plus very large binary assets.

License: MIT (OSS) · Kind: service · Deploy: native · SSO: none · Tags: vcs, content-addressed, large-files, games, merkle

Website · Source

Mercurial

Mercurial is a distributed version control system emphasizing performance, a clean command set, and scalability to very large monorepos; created in 2005, used at Meta and Mozilla.

License: GPL-2.0-or-later (OSS) · Kind: cli · Deploy: native, package · SSO: none · Tags: vcs, distributed, dvcs, monorepo

Website · Source

Perforce Helix Core

Perforce Helix Core (P4) is a centralized version control system built for very large binary assets and monorepos, dominant in AAA game and film/VFX studios.

License: Proprietary (proprietary) · Kind: service · Deploy: native, docker, saas · SSO: OIDC, SAML · Tags: vcs, centralized, large-files, games, monorepo

Website

SCCS

SCCS (Source Code Control System), created by Marc Rochkind at Bell Labs in 1973, was the first version control system: per-file history via interleaved deltas with pessimistic locking.

License: Proprietary (proprietary) · Kind: cli · Deploy: native, package · SSO: none · Tags: vcs, historic, centralized, local

Website

Unity Version Control

Unity Version Control (formerly Plastic SCM) is a commercial VCS for large binary game assets offering both centralized and distributed workflows; acquired by Unity in 2020.

License: Proprietary (proprietary) · Kind: service · Deploy: native, saas · SSO: OIDC, SAML · Tags: vcs, centralized, distributed, large-files, games

Website

ResorsIT Tools Catalog Search