Version control

Here I start my journal through my learning of Unreal Engine . The experience starts before even installing the engine, through the version control . If it’s the first time you come across with term, I explain :

Version control is to be brief, is a software that allows project modifications to be manipulated. This is essential in large teams, where the project is constantly updated. You can see what’s being modified, why, by whom, roll back changes and more!

Video game projects fit right in this definition. They tend to be projects that take a long time to be developed, involves a lot of people and moving parts. Specially true in Unreal Engine, since assets for its projects tend to be huge.

Pain point

One common solution is to use Git. Git is one of those Version Control technologies. It works well for coding files, but not as well for large binaries.

So we need to extend its functionality to cover this blind spot. For Unreal Engine, we have two popular solutions, Git For Large Files, LFS, and Perforce’s Helix Core, P4. Those can deal with our problem of Git not dealing well with those files.

Repository

But now, we have another issue, even though we can synchronize them, we need somewhere to host the repository that is probably be many gigabytes sized. GitHub while a common solution for hosting software projects, it’s not well suited for games, at least not for free, since it gives only 1 GB. So it’s wise to explore other options.

Perforce does allow self-hosting, if you have it, that’s a great solution. GitLab does provide more space than GitHub, with shared 10 GB. A perhaps unusual solution is to use Azure Repos. It does provide more space than GitHub, but it’s somewhat encrypted extents of its functionalities might scare some.

Conclusion

What you think? Personally, Azure looks promising, so I’ll be happy to share my findings! Do you use a different version control solution or repository? Let me know!