Version control for programmers

Smarter development starts with the right toolchain. Build an efficient development pipeline with version control tools that work for everyone – so you can concentrate on creating clean code.

Master version control and set up your project with this thorough best practices guide. Get the details

Get back your most precious resource: time

With Unity DevOps solutions in place, you can focus on what’s important: taking risks, experimenting, innovating, and creating. Get started with a powerful version control solution built to bridge the gap between programmer and artist workflows.

Lost in Random promo art

Lost in Random by Zoink!

Benefits for programmers

Plastic SCM large files
Large binary files are no big deal

Plastic handles checkin and update of huge files 5–8x faster than other VCS, easily handling lots of models, materials, and meshes. The more you scale, the better Plastic performs.

Save time and minimize task-switching
Save time and minimize task-switching

SemanticMerge is Unity’s code-aware merge tech, supporting C#, Java, VB.NET and more. By analyzing syntax, it automates  16–30% of code merges normally requiring a manual merge.

Plastic SCM Branch Explorer
Understand code change history

Plastic’s branch explorer visualizes your repo’s branch and merge history. Use this view on a single file or directory to explore the history and understand code changes.

Workspaces in Unity Version control
Separate workflows for non-developers

Different workflows, same repo. Artists can work in a simplified, intuitive workspace, or inside Unity with no coder-oriented features – so you spend less time troubleshooting.

Key features

Unity’s DevOps solutions give you a wide range of functionality while keeping things simple. See something missing from the list? Check out our DevOps roadmap.

Creating a repository with Plastic SCM

Work centralized or distributed

Some teams need to benefit from the powerful branching and merging of a distributed version control system (DVCS) but don’t want to have a clone of the repository (or repositories) on each machine. Plastic SCM allows teams to choose whether they want to work centralized or distributed. You can even choose both, with some team members using centralized and others distributed concurrently.

Creating a branch with Unity Plastic SCM

Responsive branching

Any successful branching and merging pattern relies on creating branches quickly. This process should take less than a second, even for codebases containing hundreds of thousands of files. With Plastic SCM, file count is never a blocker for branch creation.

Unlike other version control systems, Plastic SCM doesn’t rely on copying existing branches to create new ones. Instead, new branches inherit their properties from a given changeset. Because this process isn’t tied to the number of files in the codebase, it always takes the same amount of time (a few milliseconds) – even for massive projects with an excess of 500,000 files on a branch.

3 Way Merge with Unity Version Control

Three-way merging

Plastic SCM’s built-in three-way merge tool, Xmerge, features language-agnostic refactoring support, allowing you to resolve even the most complex merge conflicts in short order. You can also easily plug in third-party tools like Araxis, BeyondCompare, and others.

Get more details
Unity with Git version control

Take advantage of 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.

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.

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).

Security permissions with Unity Version Control

Access control, encryption, and security

Plastic SCM has a range of security features to protect your source code. Set permissions to repositories, branches, labels, and paths to not only secure the codebase but also enforce policies and security best practices within your team.

Get more detail
Unity editor with Plastic SCM

Work in-engine

Plastic SCM is optimized for a variety of gamedev scenarios and supports both Unreal and Unity. Creating with Unity? Get the Version Control Package directly from the Unity Package Manager. Enjoy true collective project ownership with a deeply embedded, flexible, and reliable version control solution that everyone can easily understand and use.

Visual Studio CodeLens Unity version control

Visual Studio with CodeLens

Codelens is now installed as a part of Visual Studio 2022 Plastic SCM extension. When you create the Plastic SCM data point above a method, property, or type, it will display a list of up to 10 of the last changes in that element. This leverages the semantic technologies in Plastic SCM, showing only changes in the file that affect the annotated element. Keep in mind that this feature will only show up in semantic-available files (C#, C, C++) in a Plastic SCM Workspace.

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 integrated player feedback for rapid, iterative game development.

Subnautica

Find out why Unknown Worlds chose Unity and Plastic SCM to help bring Subnautica to life on multiple platforms.

Set up Unity version control for your project

Want to get up and running quickly? These instructions can help you set up Unity’s version control for your project in just a few minutes.

Frequently asked questions

Does this integrate with JIRA or other tools?

Yes. Plastic has integrations with various issue tracking and project management tools, including JIRA, Rally, Bugzilla, Polarion, and more. Adding a new tool isn’t difficult, so don't hesitate to contact us, even if it's about an in-house tool.

What IDEs have integrations?

Plastic supports common Integrated Development Environments (IDEs) such as Visual Studio Code, Eclipse, IntelliJ, Android Studio, and more. Developers using any other IDE can take advantage of transparent SCM, which detects any changes in your workspace, including files and directories being moved and renamed.

What CI and DevOps tools are supported?

You can integrate Plastic with a variety of tools inside your build and deploy ecosystem to support your DevOps lifecycle. The Unity version control system supports Unity Cloud Build, Jenkins, TeamCity, Atlassian Bamboo, Maven, and CruiseControl.

What collaboration tools are supported?

With Unity’s version control system, you can set up triggers and notifications for tools such as Slack, Discord, and Webhooks.

Can I import version control history?

Plastic can import any version control history using the fast-import format, the de facto standard created by Git. Anything that can be imported into Git can be imported into Plastic. We have helped customers to migrate from Hg, Subversion, CVS, and other set-ups using this method. Plastic is also capable of exporting to fast-export format (besides GitSync), which means that if you ever need to move away from Plastic, you can.

Can I connect to Git or Perforce?

You'll be able to keep Plastic repositories in sync with Git and Perforce and also import and export using the fast-import/export de facto standard. Read more aboutGit and GitSync here or Perforce and P4 Sync here.

Are Windows, Linux, and MacOS supported?

Plastic SCM is a multiplatform version control system. You can run clients and servers on Windows, Linux and macOS, and there are solutions for other Unix platforms. One of the key features in Plastic SCM is performance, and the three main platforms (Windows, Linux and Mac) perform reliably even under heavy loads.

Can I check in and merge with Plastic Cloud Edition?

Yes, you can check in and merge directly to the cloud.

Who uses Plastic SCM?

Organizations and studios working on 3D or game development projects rely on Plastic SCM for its ability to facilitate artist workflows and handle large files and binaries. One such example is KO OP – who used Plastic to help get artists and engineers aligned. Read more in this case study.

We use cookies to ensure that we give you the best experience on our website. Visit our cookie policy page for more information.

Got it