Using Git with 3D Games

Posted by & filed under Game Development, Programming, Unity3D.

Git can work fine with 3D Games out of the box. However the main caveat here is that versioning large (>5MB) media files can be a problem over the long term as your commit history bloats. We have solved this potential issue in our projects by only versioning the binary asset when it is considered final. Our 3D artists use Dropbox to work on WIP assets, both for the reason above and because its much faster and simpler (Not many artists will actively want to use Git!).

Git Workflow

Your git workflow is very much something you need to decide for yourself given your own experiences as a team and how you work together. However. I would strongly recommend the appropriately named Git Flow methodology as described by the original author here.

I won’t go into too much depth here on how the methodology works as the author describes it perfectly and in quite few words too so its easy to get through. I have been using with my team for awhile now and its the best workflow we’ve tried so far.

Git GUI Client Application

This is really personal preference here as there are quite a few options in terms of Git GUI or whether to use a GUI at all. But I would like to suggest the free SourceTree application as it plugs in perfectly with the Git Flow extension. Read the SourceTree tutorial here on implementing the Git Flow methodology in their application.

Unity3D Ignore Folders

Unity3D Settings

Set asset settings to be stored as text-based meta files:

Set asset serialization mode to text so Git can diff them:

Leave a Reply