01 - VCS Options
There are many choices for version control software, and the one that works best comes down to preference and somewhat depends on what you are working on.
No software is intentionally excluded, and order is arbitrary. The authors make no revenue from your usage of listed products.
Git is by far the most popular and widely supported version control software, designed by Linus Torvalds for handling global collaboration on the Linux kernel. It is designed to be operable completely decentralized. It also has a steep learning curve.
Git works best with text-based content, with limited support for binary files such as images. An extension called “Git-LFS” is used to manage very large files more efficiently.
Several hosts for exist to facilitate easier collaboration, such as GitHub, Codeberg, GitLab, and GitGud. They are not necessary (Linux kernel’s git only uses email!) but an option.
The Godot game engine is famously “git friendly” due to its use of plain text files for project structure.
Community users: Anya, just.a.donkey
Subversion
Section titled “Subversion”Subversion is a version control project by the Apache Foundation. It uses a client-server model.
Github includes support for Subversion.
Perforce
Section titled “Perforce”Perforce is paid software, though it has a free tier. It is designed to work well with Unreal Engine and Unity, and has official extensions for each. It uses a client-server model. It is compatible with Git version control. It has better support for non-text files like images and 3d models, and has “exclusive file locking” to prevent two collaborators from simultaneously editing a file that can’t have changes merged easily, like 3d models.
It goes by three names: “P4”, “Helix Core”, or commonly by the company name “Perforce”.