Version control using Git and Azure DevOps for Unreal Engine and Unity
In this article we will set up a Git server on Azure DevOps, that will be the source of truth for your next Unreal or Unity project
If you want to collaborate on a game project, resolving version control (or source control) is one of the first things you need to consider. If you are familiar with Git, you may have heard of GitHub. This allows you to store your game project on a server, so that everybody has access to it. GitHub is great for software development, but for games, there are better solutions out there.
Microsoft Azure DevOps is a Git server and a viable alternative to GitHub, GitLab, and Bitbucket. It provides unlimited storage for LFS, which is a blessing for game development with Unity and Unreal. The free plan allows up to 5 users, which is great to get started. Everything above 5 users comes at a reasonable price of $6 per user per month. This is keeping in mind that it does not bill you for storage, which you will need for textures, movies, audio and 3D files.
Azure DevOps is part of the huge Microsoft Azure ecosystem, which is a direct competitor to AWS from Amazon. It seems a bit overwhelming to get started and this tutorial will help you with that.
In this tutorial, we will use
- Azure DevOps (a free account is fully fine).
- Anchorpoint, as our Git desktop application. The free trial allows us to do everything.
- An Unreal Engine project as an example. You can also use a Unity project.
Setting up Azure DevOps
Go to dev.azure.com and create an account.
Now you have to walk through the typical account creation process. When you are done with that, you will be able to create a new project in DevOps. The process is a bit nasty, but you only need to do it once.
Git for artists
Setting up Anchorpoint
In the next step, you'll need a Git client. This is a desktop application that will push and pull files from your computer to the server. In this tutorial, we will use Anchorpoint, because it is suited for artists and has all the configuration for Unreal or Unity projects ready to go. If you don’t want to use Anchorpoint, there are alternatives like GitHub Desktop or SourceTree.
Creating a project
Now it's time to turn your Unreal project into a Git repository that you can upload to DevOps. Create a project in Anchorpoint and select your project folder on your hard drive. Once you create a new project in Anchorpoint, it will be also created on Azure DevOps due to the integration.
Upload your game project to Azure DevOps
Anchorpoint detects that you have changes that haven't been committed yet. There are files on your computer that are not on the server. You need to enter a message and commit them.
When you entered the message and pressed “commit”, you created a version, which is basically a checkpoint for your project. After that, you can press “Push” to upload them to Azure DevOps.
Work in Unreal
Your workflow will be always like this:
- You work in Unreal
- You push
- You work in Unreal
- You push
During every push, Anchorpoint will check for file changes, which have been made by your teammates and download them, before uploading your changes.
What your team members should do
Your team member needs to have an active Azure DevOps account and an Anchorpoint account. When you invited your team member to an Anchorpoint project, which you did in the step above, they will get a notification. They simply need to click on the invite and join the project. Anchorpoint will ask them, where to store the Git repository. They have to pick an empty folder on their hard drive and then Anchorpoint will download the game project from DevOps.
This is all you need to do to set up a game project with Azure DevOps and Anchorpoint. From now on, you can make changes in Unreal or Unity and commit, push and pull. That’s everything you need to know about Git.
Introducing a new GitLab integration
Introducing our new integration to GitLab, which creates repositories and add members directly from Anchorpoint. The integration supports GitLab's cloud and self-hosted versions and makes it easy for artists to setup projects without learning a new interface.
Virtual production with crea8.STUDIO
How crea8.STUDIO builds its tools on top of Unreal Engine to help studios, brands and creatives get started with virtual production.