Version control: Where do you put your raw media files (Photoshop, Blender, etc.)?

I’m setting up a Git repository for a new Unity project, and I’m curious what the best practice is for where to put raw working files that generally are not imported into the Unity project itself.

I’d recommend keeping raw media files out of the repository. The following is from About large files on GitHub - GitHub Docs

“File size limits: GitHub limits the size of files allowed in repositories. If you attempt to add or update a file that is larger than 50 MB, you will receive a warning from Git.”

“Repository size limits: We recommend repositories remain small, ideally less than 1 GB, and less than 5 GB is strongly recommended.”

I’m not really sure what our art team uses (might be Dropbox or Google Drive). I think the art team also doesn’t really use a history/rollback. They tend to just create copies so they can compare the changes.

I just use Google Drive for those, it has a version history which, at least for me, is more than enough.

I avoid google drive due to past experience where it somehow managed to wipe out thousands of files due to a version conflict. Based on experience, I wouldn’t recommend using it for anything serious.

I recommend using a VC dedicated to art, like alienbrain etc https://alienbrain.com/

Or perforce (free up to 5 users)

Otherwise git lfs could be an alternative (although less suited to it, certainly messier to manage)

2 Likes

Ah this is the worst, and those things happen unfortunately, I’ve been using for a couple of years for lots of production files (.ma, .psd, etc) and still didn’t had any problem still, I hope I don’t face this same problem in the future.

I didn’t know those existed, cool.

1 Like

Seconding Perforce. It’s basically ideal for asset management at project scale.

1 Like

Please note that the OP asked about “Git”, not “GitHub”. The two are often confused for one another.

GitHub as a hosting service limits the size of files. Git, the software itself, does not. It’ll chow down on whatever you throw at it. If your hosting service allows you to do it then you can put whatever size files in there you want, and even supports this via git-lfs.

That said, if you know ahead of time that you’re going to need a lot of large binary files then Git may not be the best choice, and I’d look into the ones others have mentioned. Perforce and Plastic are the first two which spring to mind for me, both of which have free entry level services.

2 Likes

I use google drive for sharing builds/assets but I’m not convinced it hasn’t lost some files over time. I’ve looked for stuff I uploaded 6+ years ago and couldn’t find it and I know I uploaded it and I pay for extra storage not just the free account.

I would use Git only for the Unity project. There are so many files (scans, textures, assets from the store) which are heavy and don’t require versioning. For that, I would stick to Google Drive or Dropbox. An alternative is a so-called cloud NAS. That’s basically a mounted network drive which connects to a cloud hosting provider like Backblaze or AWS. It caches files and does uploads in the background. I made a tutorial for that using Anchorpoint (which is also free) Hope that helps