Tutorials ‐ Git Usage - ow-mods/outer-wilds-unity-wiki GitHub Wiki

If you are new, you may be used to using Github Desktop for your git needs. However, Unity has some of their own special tools that makes working in git a lot easier. Unfortunately, Github Desktop does not easily integrate with these tools, meaning you need to use the command line (scary for beginners).

For this reason, I recommend SourceTree. It has plenty of tutorials, and the workflow of tracking and pushing changes is fairly similar to github desktop. For this reason, I will not go over it comprehensively here.

SourceTree and Unity

Please follow this tutorial to set up unity to work with SourceTree. The gist is

  1. Tell SourceTree to use UnityYAMLMerge when merging (merging is when 2 people make changes to the same places and try to push those)
  2. Tell UnityYAMLMerge to use Meld for anything it can't figure out
  3. Continue to pull and merge as normal, and it will use Unity's tools to make handling conflicts much easier

Other tips

Pull before you work, and commit + push regularly to minimize conflicts with others (it's also easier when you can roll back small amounts of change)

When working in teams, it's a good idea to split up your main planet prefabs into smaller subprefabs. This way, multiple people are editing different files, leading to less merge conflicts.

Proceed with caution when multiple people are collaborating with multiple game rips. I elaborate on this point here