Working with Git-based version control can feel a bit new. The biggest difference is that you don’t incrementally save files, you just overwrite them. Don’t worry, the data is not deleted. Anchorpoint saves a sort of “snapshot”, called “commit” of your project with each version. This way you can always restore older files.
What is Git#
Git is a versioning system, which among other things is behind the well-known platform GitHub. The task of Git is to record all file changes within a folder (a repository) so that these can be saved (committed) as a version. Git is the most popular versioning system in software development. It is open source and has lots of plugins and extensions. It is possible to host Git projects on numerous servers such as GitHub, GitLab, Bitbucket or Azure Devops.
Git does not store versions incrementally. So you don’t have to adjust filenames. When creating a new version, it takes a snapshot of a file and puts it in a hidden directory. You can restore old file versions with Anchorpoint or any other Git software.
Git repositories in Anchorpoint#
Creating a Git repository requires creating a project and choosing a project folder. All files inside that folder are beeing tracked. As soon as you add a new file, rename it, move it or overwrite it, Anchorpoint detects this change and shows it to you with an icon. In the timeline all changed files are shown again and can be versioned. With versioning you create a snapshot of this file and upload it to the central server. This is the typical commit and push workflow.
What about large files#
Anchorpoint uses Git LFS for binary data. Basically, anything that is not a plain text file is a binary file and is versioned via Git LFS. You don’t need to install any additional plugins. LFS data is not put into the Git repository, but into a separate cache. There is no limit to the size of a single file.
The gitignore filters file types and folders from the version tracking. They are also never uploaded to the server. These are often cache files or temporary files created by the game engine.
Anchorpoint provides presets for the gitignore. You can also create your own presets.
What if something goes wrong#
Version control systems can feel like black boxes because all file versions are stored in a cache folder. Sometimes you also get into states that cannot be fixed without command line commands. You can open the commandline application from any folder within your Git repository. Git has several commands. It’s best to have someone on your team who knows Git and can help you. Otherwise, you can always ask us on Discord.
Anchorpoint supports branches and displays a selection of branches if there is more than one branch in a repository. However, all operations around creating and merging branches must be performed on another Git client.