Why Git users switch
Open source, free, and flexible, Git is a popular VCS, but it can be daunting for the less technically savvy. When artists run into issues, they need programmers to fix them: It doesn’t integrate with their tools, and buckles under the weight of large binary files common in gamedev.

Return to Nangrim by Sycoforge
How Git users benefit from Unity’s version control
Unity Plastic SCM is built for game development. Here’s what you stand to gain when you upgrade from Git.

Speed with large repos and binary files
Plastic won’t break, even with repos in excess of 5 TB, and it handles checkins and updates 5–8x faster than other solutions.

Better collaboration with artists
Artists can use Plastic SCM independently via Gluon, an easy-to-use workflow with file locking. Coders maintain their standard workflow with full branching and merging.

Work centralized or distributed
Choosing a VCS often means deciding whether to work centralized or distributed. Plastic has both: Get the speed and power of Git-style workflows with Perforce-like scalability.

Simplify maintenance with greater flexibility
Plastic SCM supports multiple workflows and large files out of the box, so you don’t need to maintain redundant systems or add-ons. Keep your toolchain lean and highly performant.
Unity’s DevOps solutions give programmers a wide range of functionality while keeping things streamlined for artists. See something missing from the list? Check out our DevOps roadmap.

Save time and minimize task-switching
Unity’s code-aware merge tech, SemanticMerge, tracks moved code to help you focus only on the relevant changes. By analyzing syntax, it automates 16–30% of code merges normally requiring a manual merge, drastically reducing merge conflicts that will distract from your workflow.
Plastic SCM will analyze a refactor and assess whether parts of the code, such as a method, have been moved, even across multiple files. This allows you to focus your review on only the most substantial changes. It supports C#, Java, VB.NET, and more.
6e1e.jpg?itok=y1BFjDfF)
Use as a Git client
Plastic SCM’s GitSync provides bidirectional synchronization between Plastic and Git. Plastic communicates with Git network protocols to push and pull packages and merges to a remote Git server (and the reverse). This allows you to use the Plastic GUI as a Git client: Because Plastic is structured somewhat similarly to Git, you can exchange all changesets, branches, and merges between them.

Fast import and export
Plastic implements fast-import and fast-export commands, all of which are totally compatible with their Git counterparts. These commands are used to import your project from Git to Plastic, and as a way to safely move away from Plastic if you ever need to. For regular daily operations, GitSync is an easier choice.

Utilize the Git ecosystem
Any tool in Git’s ecosystem can connect to Plastic instantly using their native Git functionalities. Teams using Plastic can then benefit from all the DevOps, CI, and project management integrations developed specifically for Git.
GitServer is GitSync’s server-side counterpart. It closes the Git interoperability loop by allowing Plastic SCM to serve repositories using Git protocols (Git and HTTP supported).
Games making it happen
Goodbye Volcano High
How does a worker-owned cooperative studio get both artists and engineers aligned on a production process? Read how KO_OP powered collaboration with Plastic SCM.
Return to Nangrim
Read how Sycoforge leveraged Unity tools to manage the growing scope of their project and integrate player feedback for rapid, iterative game development.
Subnautica
Find out why Unknown Worlds chose Unity and Plastic SCM to help bring Subnautica to life.
Frequently asked questions
Plastic is a DVCS too. So you'll use the same workflow: You commit first (checkin), then push your changes to the remote repo. In Plastic, you can work centralized if you wish. SVN-style, directly doing checkin without an intermediate clone? It’s possible.
While coders will love DVCS, other roles like artists and designers will probably go for central.
Yes. Everything in Plastic can be done visually from the GUI. You’ll use the Branch Explorer for all things related to branching and merging.
Yes, and you can make partial replicas, meaning you can simply pull a branch without bringing all the parents and merge sources and be able to add changes and push back.
You don’t need to “clone” the full repo to start working on a replicated repo in Plastic. You can simply run what we call a partial replica, which is much faster, then work on the repo, make new changes, and pull back.
This is the equivalent of a shallow clone with a restricted depth but capable of pushing back.
Merging in Plastic is even better. The merge engine in Plastic can deal with moves and renames that make Git break. Plastic includes its own diff and merge tools, too.
Plastic can handle huge files – what fits in RAM is not the limit. Plastic is good with huge repos too.
“Remotes” don’t exist in Plastic. You just push and pull the branches you want to the repos you want – there’s no need to define remotes first.
Plastic SCM submodules are called Xlinks, and they’re a greatly enhanced and simplified version of submodules. Creating them is simple, with full GUI support, and the tedious process of updating a submodule doesn’t exist with Xlinks – they are capable of managing references manually. Branches under Xlinked directories are created automatically, making feature branches very simple in multi-repo scenarios.
Git-based version control offers a wide array of features and community support, while Plastic SCM offers flexibility for different workflows and handles large files out of the box. What works best for one organization may not work as well for another. For helpful tips in evaluating what’s best for you, read more in this blog.
Plastic SCM is not Git, though it allows for distributed version control (DVCS) like a Git-based system. Plastic SCM starts with all the strengths of Git, and then it adds support for large files, consistent GUIs, ACL-based permissions, handles huge repos, strong merging, partial replica, semantic diffing, and more.