What's your folder structure for source control?

I’m on a team of four people (three programmers and one artist) that have previously worked together on a few Unity projects, and this is our first UE4 project. We opted to go with Subversion this time around as opposed to going with Git to avoid merge conflicts and troubles with two people modifying the same binary asset. The built-in integration with SVN is working pretty well, aside from it crashing time to time when we try to import and mark more than three assets for add at once. The one thing we were confused about though was how exactly that import process worked.

Coming from Unity3D, we were used to dropping in our .fbx files into the project directory and directly referencing the assets as such. With UE4, I noticed that .uasset files are what are actually recognized by the editor. It didn’t cause any problems, so we didn’t think much of it then, but we ran into issues with reimporting files since the asset source path was a relative link that was only valid on our artist’s computer. We’re thinking about changing up our folder structure:


- ProjectDirectory
   - Config
   - Content
   - Source
   - ProjectName.uproject

…to…


- Assets
   - Characters
       - Vii
           - Vii.fbx
           - Vii_normals.png
- ProjectDirectory
   - Config
   - Content
   - Source
   - ProjectName.uproject

Does that seem like a good way to go about it? Since both the ‘Assets’ folder and the ‘Project’ folder would be stored in source control, we wouldn’t be dependent on having the artist’s computer to be able to reimport assets. Anyone have a different way of handling this?

I’d be interested in how this turned out for you. I’ve just started a private project using BitBucket and SourceTree. Currently I have a art src folder in the contents directory. I’m getting errors in the log about Engine folders being outside the repo (though I wouldn’t want them under source control anyway).