What do you put under source control?

Hey guys,

I am just wondering what you typically put under source control when working on a UE4 project.

I use TortoiseSVN as my client and I use VisualSVN for the server. I have been versioning the entire project folder. Included with that is also my 3D models, textures, etc. But I looked at the Unreal Tournament branch on GitHub and noticed that all the binaries are downloaded separately. Does this mean things such as blueprints, maps, and the like are not versioned?

The reason I ask is it gets a little annoying when I make a commit to SVN and I get a ton of commit files such as the “Intermediate/…” and “Saved/…” folders (for example, these are not on the GitHub branch for UT). It’s hard to make commit comments when I get a commit dialog with over 100 files that have been changed.

I have daily backups that run on my computer, so I always have backups of the project if something were to happen, so I am not so sure I really need to version all of these assets that I wouldn’t know what to revert even if I wanted to. My own assets such as art, 3D models, code, documents, etc. seem to really be the only ones I should be committing.

What do you guys think?

2 Likes

You definitely do not need any Intermediate, Saved, or DerivedDataCache files on your source control.

You do not need any Visual Studio specific files such as .sln, .sdf, .suo.

Documentation and Extra folders are optional.

Samples, Templates, and FeaturePacks are optional.

Generally everything else is required. You can ignore *.pdb, *.exp files and debug binaries though if you don’t need to debug other people’s crashes or need to save space.

UT binary assets are not on GitHub as GitHub has a max file size per file limit which many files exceed, such as maps, big content, and executable binaries. You should keep these on your source control however unless you have a way to replicate Epic’s automated binary dependency gathering setup.

2 Likes

Thanks for the input. I had already unversioned the Binaries and all of the Visual Studio specific stuff as I knew I could generate them via the .uproject file. It definitely seems the Intermediate and Saved data folders were the cause of so many different files showing up in each commit.